Stärkere Stromversorgung / Grove-module?

Hi, ich bin ganz neu dabei und hoffe ihr verzeiht mir meine totalen Anfängerfragen.
Einiges konnte ich schon nachlesen. der Calliope ist so genial!!

Meine Frage ist, wenn ich Grove Module kaufe, die angeben 5V zu benötigen,
dann müsste ich ja bei Batteriebetrieb entsprechend mehr Power anklemmen.

Habt ihr da Empfehlungen? Muss ich mir selbst etwas “basteln”.
Ich möchte ein Startetkit mit 10 grove Modulen holen und auch mit so
einem Grove-Hub dann z.B. noch mehrere Module gleichzeitig anschließen.

Ja, du musst Dir selbst etwas basteln. Welche Sensoren willst Du denn anschließen?

Hallo,
ich hatte das gleiche Problem mit dem Ultraschallsensor HC SR04, der bei mir erst ab 3,4V funktionieren wollte. Ich habe einen Pegelwandler genutzt, den es für ca 2 Euro gibt.

@nico, kannst du mir mal sagen - wo du den her hast.

der Calliope kommuniziert mit

a) der Batteriespannung ( wenn er an der Batterie hängt )
oder
b) mit 3,3V !!! wenn er an USB hängt.
ALSO ACHTUNG
Manche ICs mögen es garnicht wenn sie unterhalb ihrer spezifizierten Spannung betrieben werden. Es muss ein Pegelwandler von 3V nach 5V zwischengeschaltet werden. Meistens werden die dann von beiden Seiten ( der 3V und der 5V Seite ) versorgt.
Daher meine Frage an dich - Nico - woher? Ich will mir mal die Bausteine anschauen.
BotU

Hallo,
die Pegelwandler gibt es z.B. bei chinesischen Plattformen (längere Lieferzeit dafür sehr preiswert) oder bei Internethändlern aus D.

Details zur Beschaltung inkl. Beispielfoto so einer Platine s. Calliope mit Pegelwandler

Ein sonniges Hallo an Alle hier,

nach langem Ausprobieren entschloss ich mich mich hier doch mal an zu melden.
Hab ein grösseres Projekt mit meinem Sohn vor, dass ohne Tests wohl nicht auf Anhieb funktioniert. So gedacht, so eingetreten. Wollte wohl am Anfang zu viel.
Kurz zum Projekt: Wir haben einen Roboter aus den 80ern, Emiglio heisst er. Vielleicht kennt ihn der Eine oder Andere. Meine Idee ist, ihn etwas umzubauen. Zwei Getriebemotoren, Ultraschallsensor auf einem Servo und mal sehen was sonst noch so mit meinem Halbwissen so geht.
Hab zuerst ein kleines Modell 3d-Gedruckt und Zwei Motoren mit eigener 9V-Versorgung und den Servo, der auch mit mehr als 3,3V versorgt werden wollte, montiert. Den Ultraschallsensor bekomme ich noch nicht zum laufen, braucht aber auch eine eigene Stromversorgung. Hier haperts noch mit dem Anschluss und somit auch mit dem Code. Meine Erfahrung mit den Motoren, ist die gleiche, die hier im Forum beschrieben wird. Die Dioden zwischen den Motorenanschlüssen hab ich noch nicht versucht, hört sich aber vielversprechend an. Hardwareseitig schaut es so aus, als ob ich das wuppen könnte. Softwareseitig muss ich makecode noch kennen lernen. Z.B. hab ich keine Ahnung, wie ich die Pakete, speziell das Grove-Paket, installiere. Den Weg weiss ich, nur da ist ist da kein Paket Namens Grove. Und über html-Link klappt es nicht oder ich verwende die falschen Links. https://makecode.microbit.org/pkg/seeed-studio/pxt-grove auch hiermit komm ich nicht zurecht. Apropos Grove. Könnte ich ein Grove-Kabel so modifizieren, dass ich zwischen + und - ein StepUP Modul löten und damit Sensoren am A1 betreiben die 5V benötigen? Oder muss zwingend der Weg über den Pegelwandler verwendet werden? Hierbei gehts (noch) um den Ultraschallsensor. Da ja viele Sensoren 5V benötigen, wäre so ein gelöteter StepUP-Adapter keine schlechte Idee, so mein Gedanke.
Jetzt hab ich so viel geschrieben um eigentlich nur die letzte Frage beantwortet zu bekommen :upside_down_face:
Bin aber über jede gebündelte Info froh, die Ihr mir da lassen könnt.

Beste Grüsse
Karsiacar

hallo karsiacar, mit diesem „dioden hack“ habe ich jetztz noch nichts machen müssen. Bisher habe ich gleichstrom Motoren einfach an die Motor Pins am Calliope angeschlossen (ein Motor geht dann vor und zurück. Bei zwei motoren A „an“ und/oder B „an“ bzw. aus sprich bei 2 einem Fahrzeug ähnlich kettenfahrzeug Steuerung nur vor, links und rechts ohne rückwärtsgang) Was ich festgestellt habe wenn man jetzt noch einen Servo Motor dazu nutzen will, war es zuverlässiger erst den Motor an zu schalten und dann den Servo Motor auch einen gewissen Winkel zu setzten.
z.B. so: if (0 == 0) {
motors.motorPower(100)
pins.servoWritePin(AnalogPin.P1, 9)
} else if (0 == 0) {
motors.motorPower(100)
pins.servoWritePin(AnalogPin.P1, 89)

Das groove-Paket müsstest du in makecode wie folgt hinzufügen können.
Auf der linken seite sind die ganzen befehlsgruppen wie Grundlagen, Eingaben etc.
In dieser Liste ganz unten kannst du erstmal auf „Fortgeschritten“ klicken dann klappt sich mehr auf wieder ganz unten findest du dann „Paket hinzufügen“ mit einem kleinen + als Symbol.
Dort kann man das Groove Paket auswählen. Ich habe es eben nochmal getesten auch bei mir war es unter https://makecode.calliope.cc/ nicht mehr zu finden schade :frowning:
d.h. du müsstest den github link: https://github.com/Seeed-Studio/pxt-grove oben in die Zeile kopieren und enter drücken.

aber unter der neuen version https://makecode.calliope.cc/beta#editor ist es direkt zum anklicken.

So weit ich weiß ist das Groove Paket für diesen US-Sensor :
https://eckstein-shop.de/Seeed-Studio-Grove-Ultrasonic-Ranger-non-contact-distance-Sensor-3cm-350cm

1 Like

Hallo RoBiN,

danke für die Antwort! Paket ist „installiert“. Nur wenn du schreibst, dass das Paket für den Seeed-GroveUS-Sensor sind, würden denn die nicht Seeed-Sensoren auch darüber zu programmieren sein? Oder hat dies nur mit dem Steckplatz A1 zu tun? Also Seeed an A1 und andere Module an P1 usw. Oder anders: A1 „gekoppelt“ mit dem Grove-Paket?

Du hattest recht mit den Dioden. Sie bringen nichts. Hab noch ein paar, im Rahmen meines Wissens, Tests gemacht. Leider kann ich mit dem Code von dir wenig anfangen - versteh ihn so nicht ganz, bzw kann ihn nicht in Blöcke umsetzen.
Zu meinen Tests kann ich sagen, wenn ich …

  1. nur die zwei Motoren anschliesse, funktioniert es mit nem einfachen Code
  2. den Servo dazu anschliesse und den Code erweitere funktionieren die Motoren auch, aber nur bis ich mit „B“ den Servo zuschalte. Servo zuckelt dann nur noch und ein Motor bleibt stehen. (Drehender Motor dreht langsam(wie wenn zwei laufen würden))
  3. Wenn ich den Servo dauerhaft von Anfang an laufen lasse, und dann mit „A“ die Motoren zuschalte, dreht ein Motor, aber doppelt so schnell.
    Alle Programme laufen genau einmal. Danach, also erneut „A“ oder „B“ drücken, führt zu unkontrollierten Bewegungen von Motor und Servo. Alles ist, wie gesagt, mit eigener Stromversorgung, was mich, wenn noch mehr Sensoren am Roboter gewünscht, dazu zwingt, doch auf die teureren Grovemodule setzen muss. Sonst besteht der Roboter nur aus Batterien.

Achso, die Frage noch wegen dem StepUP-Modul am Grovekabel. Macht das Sinn?

Wünsche einen schönen FeierVatertag
Karsiacar

Zum Ultraschallsensor: Der Seeed-Sensor sendet und empfängt über einen Pin während die anderen einen Pin zum Senden und einen zum Empfangen benötigen. Hast du den von Grove oder nicht?

Zu deinem Motor/Servoproblem. Das funktioniert aus irgendeinem Grund nicht. Mögliche Lösung: ein Board das über IIC läuft wie dieses hier: https://www.dfrobot.com/product-1738.html. Passendes Paket gibt es bei mir https://github.com/MKleinSB/pxt-dfrobot-motor.
Allerdings läuft diese Platine nur mit 5V. Der Mini wird dafür auch automatisch mit Strom versorgt.

Hi klmi,
ich hab den HC-SR04. Also ein Pin senden einer zum empfangen. Da geht mir das Licht auf, dass mein Sensor an A1 nix verloren hat, oder? (StepUP-Gedanke)
Besten Dank für dein Lösungsvorschlag für die Motoren/Servos. Um noch ein Board zu kaufen würd ich gern herum kommen.
Meine Vorstellung war diese
https://calliopemini.info/ca_60.php
bzw. diese
http://mint-unt.de/kollisionsschutz-1.html
Nur halt mit extra Servo um den Ultraschallsensor schwenken zu lassen. Muss ja nicht sein.

Doch, A1 geht wenn die Pins dann C16 und C17 sind. Der HC-SR04 muss aber die 3Volt Version sein und nicht die 5V Version. Für den benötigst Du einen Level-shifter.

Viel Erfolg

Michael

falls du eine einfache H-Brücke wie z.B. L293D kannst du es auch damit mal Probieren die beiden Motoren an zu steuern.
Ich hatte hier auch mal ein packet geschrieben https://github.com/r00b1nh00d/KISS-MINT-MOTOR

Damit kannst du recht einfach den H-Brücken IC oder so ein Modul an die Pins P0,P1,P2,P3 Anschließen und 2 Motoren unabhängig von einander vor und zurück drehen lassen. Sollte auch unabhängign vom Servo sein (kann ich bei Interesse am WE ggf. mal testen) dafür ist die Geschwindigkeit der Motoren nur „0“ oder „1“ also „aus“ oder „volle Power“

Oje, jetzt kommt Eins zum Anderen.

Hallo erstma,
hab mir jetzt die Pegelwandler bestellt, da es die 5V-US sind.
Hab dies https://micoro.de/calliope/calliope-mit-pegelwandler/ Tutorial gefunden um die Wandler an zu schliessen. Sah dort, dass ich auch hier 5v in den Sensor speisen muss. Jetzt dachte ich mir, dass ich mir ein Akkupack zusammen löte. Material hatte ich noch von früheren DIY- Powerbanks. Aber ab hier hört mein Halbwissen auch auf.
Problem bzw Vorhaben:
Zwei 3,7V Flachakku in Reihe = 7,4V mit Step Down auf 5V drosseln. Am Step Down-Ausgang dann Jumperkabel zum Sensor/Servo(zusätzlichen -Pol zum Calliope). NUR, wie lade ich jetzt die Akkus? Hab n Lademodul TP4056 da, bloß wo ranlöten? Mit Schalter ein-aus-ein? Wie passen die 7,4V mit den 5V beim laden? Geht das überhaupt so?
Wenn Ihr mir bis hier hin helfen könnt(et), dann wäre auch erst mal das Ultrasensorproblem gelöst. Mein Motorproblem bleibt bis ich mich dann wohl doch um IC oder Driver Board kümmere. Hier noch mal ein Danke an euch beide.
Schrieb in vorherigen „Antworten“: Hartwareseitig könnt ich das wuppen - Pustekuchen :smiley:

Grüße
Karsiacar

Hallo,

jetzt mal ehrlich, Calliope ist doch nicht für Grundschüler, bei den Hürden und Enttäuschungen. Nicht nur, dass das beim „speile Note“ der Motor zu laufen beginnt, nein es sind auch, m.E. viele andere Dinge, die nicht nachvollziehbar sind. Zumindest mal für Schüler. Und wohl auch bei mir.
Komischerweise gibt es wohl Personen wo es Funktioniert. Noch komischer - auf verschiedensten Wegen. Was ist das Problem.

Weist ja auch schon darauf hin, dass man´s kennt aber nicht weis warum.
Wie ich zu der Aussage komme:
Hab mir jetzt n alternatives Batteriepack gelötet.
Calliope mit eigenem 3,3V(gemessen 2,8V) Batteriepack an Pegelwandler zum US der seine 5,1V gemessene Stromversorgung hat (4x 1,2 Akkus).
Bei Tests kam raus, dass es darauf ankommt, ob ein „pausiere 30ms“ gesetzt ist oder nicht.
Z.B.
ist „pausiere“ zwischen „schreibe digitalen Wert“ gesetzt, dann gibt der US immer falsche Werte.
Genauer:

  • Stromversorgung über USB am PC wird IMMER ca.1862cm? ausgegeben. Abstand variiert um ca. 100cm?. Egal ob ich den Sensor 50cm weiter weg stelle oder nur 20cm.
  • Stromversorgung an Calliope- Batteriepack wird IMMER ca.1262cm? ausgegben. Bei variieren des US das gleiche.

ist „pausiere“ nicht zwischen „schreibe digitalen Wert“ gesetzt, bekomm ich teilweise richtige Werte.
Genauer:

  • Stromversorgung über USB am PC wir der richtige Wert ausgegeben. Aber erst nach zweitem drücken von „Knopf A“. Beim ersten drücken auf „A“ bekomm ich IMMER ca. 6.50cm? zurück.
  • Stromversorgung an Calliope- Batteriepack passiert gar nichts.

Ach so, es macht auch ein Unterschied, ob ich das Calliope- Batteriepack an den oberen PIN´s + und - anschliesse(Funktion gegeben) oder an den unteren rechten PIN´s anschliesse(gar keine Funktion - nur orangefarbenes Powerlicht brennt).

Und jetzt noch zwei Motoren dazu - wohl eher was für Elektroingenieure im zweiten Semester?!
Sorry, da hatte ich mit meinen vier Raspberry Pi´s mehr Erfolge. Zwar nicht im Roboterbau. Aber mit einer Haussteuerung in fhem, einem 3d-Drucker der üben Pi-Zero gesteuert wird, eine Analoge Stereoanlage die mit einem Pi ins Netzwerk gebracht wurde und ein Mediacenter.
Alles ist einfacher gewesen wie am Calliope mit nem US zu spielen.
Muss ich jetzt warten, bis mein Sohn(6) schreiben kann und er dann in python oder perl die Raspis programmieren kann. Glaube ja. Ich bekomm´s ja nicht mal hin.

Will aber dabei bleiben und das Ding zum laufen bringen. Bitte mit euren Unterstützung. Vorausgesetzt eure Lust und Zeit.

In diesem Sinne - schöne Zeit und Grüße
Karsiacar

So DC-Getriebe Motoren und Sevomotoren habe ich eben nochmal fix angeschlossen.

1x DC-Getriebe Motor Vor-und Rückwärts ohne Probleme
2x DC-Getriebe Motor man kann nur A/B 00 01 10 11 schalten
also bisher alles schick und nichts überraschendes.

jetztz
1x Servomotor + 1x DC-Getriebemotor der Servomotor kann verschiedene Winkel anfahren der DC Motor vor und Rückwärts drehen
1x Servomotor + 2x DC-Getriebemotor
-wenn die DC-Motoren können beide an/ausgeschalten werden wie zuvor solang an den Servo noch kein Signal gesendet wurde
-wenn der Servo auf ein einen Winkel gestellt wird dreht nur noch der „linke“ Motor und auch nur mit gerinerer Geschw. wird
-wird der DC-Motor wieder ausgeschalten und neu angeschalten dreht er wieder auf der gewünschten Geschwindigkeit aber auch nur noch der „linke“

Ich meine hier im forum stand mal, dass es höchstwahrscheinlich an den gesendeten PWM-Signalen des Calliope liegt.
(alles mit makecode und makecode/beta nochmal getestet)

Kannst du das mit dem Ultraschall Sensor genauer beschreiben? (ggf. auch mit Bildern/screenshots)
du benutzt den SR-HC04? wie genau verschaltet? wie schaut dein Code aus?

Ich denke auch dein Projekt ist schon Recht ambitioniert für die Grundschule Grade wenn man jetzt Module verwendet die keine Kompatibilität von haus aus haben.
Vergleicht man das Mal mit den von Cornelsen für die Grundschule vorgeschlagenen Projekten. Oder Lego Mindstorms, damit kann man ja auch so einen Roboter bauen und das Set wird ab 10jahren empfohlen, wenn man jetzt aber für Mindstorms nicht lego Sensoren nutzt wird das nochmal ein ganzes Stück komplexer

1 Like

Hallo RoBiN,

Danke für dein Zutun! Hab glaube nicht erwähnt, dass der Servo „nur“ den US hin und her schwenken sollte. Also kein Einsatz als Lenkung. Der Roboter, wo das Ganze eingebaut werden soll, verlangt nach der Kettenantriebsmethode. Auf´s Schwenken kann ich ja verzichten, wobei an einem 50cm Roboter sich bewegende Teile natürlich viel cooler aussehen .

Hatte ich auch schon gelesen…
Genau ab hier verlässt mich der Spass. Motor 9V, US 6V und Calliope 3,7V. Servo will ja auch extra versorgt werden, sofern das überhaupt klappt. Wo sollen denn die ganzen Zellen für ein bisschen Spass alle her kommen?

Bin aber ein kleinen Schritt weiter. Hab mir jetzt noch mal n Calliope- Powerpack gelötet.
Hierzu hab ich ein 3,7V Flachakku mit Schalter an den Batterieanschluss des Calliope gesteckt. Jetzt reicht der Saft endlich aus, um den US relativ zuverlässig arbeiten zu lassen. Relativ deswegen, weil wenn ich mit „A“ auslöse, kommt immer noch, wie oben beschrieben, IMMER ca. 6.50cm? Hier müsste dann die Distanz im Code darunter liegen, bevor es zu Kollision kommt. Zu wenig um noch „lenken“ zu können. Ab dem zweiten druck läuft er dann aber zuverlässig und zeigt die Distanz ziemlich genau an. Hier aber auch der kleine Unterschied, ob von USB oder Batteriepack(BP = kleinere Distanz). Obwohl gemessen am US genau 4,42V anliegen, und zwar vom BP und USB.
Verschaltet hab ich mein US


mit einem Pegelwandler am Calliope.
Also:
„Ausgang“ + und - vom Calliope zum Pegelwandler LV und GND. Daten/Signalkabel von Pegelwandler C17 und C16.
Von 6V-Pack jeweils + und - zu Pegelwandler und US über HV und GND. Daten/Signalkabel auch an US.
https://micoro.de/calliope/calliope-mit-pegelwandler/
und der Code:

in der beta gebaut.

Hab jetzt mal alles zusammen gesteckt und probiere n bisschen in makecode.
Hürde im Moment ist die falsche Erstausgabe der Distanz.
Um das PWM in den Griff zu bekommen ist der Umstieg auf 3,3V Module vielleicht Sinnvoller. Müssen aber bestimmt auch mit 3,7V-Akku am Calliope betrieben werden.

So wieder genug geschrieben und Erfahrung geteilt.

Bleibt munter
Karsiacar

Sorry, das Amazonplakat soll keine Werbung sein :joy:

So habe länger nichts mehr hier geschrieben aber heute auch Mal den HC -SR 04 angeschlossen. Mit einem Pegelwandler dazwischen und und Vc des Sensors an ca. 5V.

Einen Code dazu gab es hier im Forum ja schonmal.
Einfach den Pin an dem Trigger angeschlossen ist high setzen 30ms warten dann wieder Low setzten und im Anschluss Impuls vom Echo Pin auslesen und durch 58 teilen, das kommt schon ganz gut hin mit der Entfernung in cm. :slight_smile:

1 Like