Ausgangstreiber für FTduino

Community-Firmware (cfw), Selbstbaucontroller (TX-Pi, ftduino, usw.), usw.
Forumsregeln
Bitte beachte die Forumsregeln!
Antworten
Benutzeravatar
MasterOfGizmo
Beiträge: 2720
Registriert: 30 Nov 2014, 07:44

Ausgangstreiber für FTduino

Beitrag von MasterOfGizmo » 14 Apr 2017, 15:10

Ich bin noch auf der Suche nach dem perfekten Motor/Ausgangstreiber für den FTduino. Mein Prototyp in https://www.youtube.com/watch?v=yL48v5ykO7s nutzt zwei TB6612FNG H-Brücken. Die sind klein, billig und liefern 1.2A Dauerstrom. Der größte Nachteil ist, dass man bei denen nicht beide Ausgänge gleichzeitig einschalten kann. Wenn man z.B. zwei Lampen statt eines Motors anschleßt kann man nicht einfach beide Lampen gleoichzeitig einschalten. Außerden braucht man am AVR recht viele Pins, um die beiden anzusteuern.

Fischertechnik nutzt MC33879. Das sind im Prinzip nur acht MOSFETs hinter einem Schieberegister. Vorteil: Man kann beliebig schalten und eben auch zwei Ausgänge gleichzeitig einschalten. Und dank SPI-Interface braucht man wenig Pins am AVR begrenzt aber laut Datenblatt den Strom irgendwo zwischen 600mA und 1.2A.

Hat einer von Euch eine gute Idee? Billig sollte es natürlich sein, SPI oder I2C wäre nett, MOSFETs sollten schon drin sein und man sollte beide Ausgänge der H-Brücke gleichzeitig einschalten können.
Arduino für fischertechnik: ftDuino http://ftduino.de, ftDuino32 http://ftduino.de/32

Benutzeravatar
H.A.R.R.Y.
Beiträge: 1083
Registriert: 01 Okt 2012, 08:38
Wohnort: Westpfalz

Re: Ausgangstreiber für FTduino

Beitrag von H.A.R.R.Y. » 15 Apr 2017, 20:37

Also der TB6612 kann auch zwei Lampen gleichzeitig einschalten. Alles eine Frage der Interpretation.
Die Lampen gehen halt nicht nach GND sondern nach V+ und der TB6612 gibt den Lowside-Schalter.
Die Logiktabelle mit Input1 und 2 ginge dann so (PWM=H + STDBY=H):
'LL' = Beide Lampen an
'LH' = Eine Lampe an, die andere aus
'HL' = Die andere Lampe ist jetzt an
'HH' = Beide Lampen aus
;)

Hängst Du noch ein Schieberegister davor, kannst Du am µC auch noch ein bißchen IO-Pins einsparen. Kommt halt darauf an ob Du 3 Pins für die SPI (MOSI, CLK + 'CS') gegen 4 für die Motorkontrolle eintauschen möchtest. PWM würde ich immer diekt auf einen PWM-Generator vom AVR geben und den STBY könnte man eventuell auch fest auf '1' legen.

Gruß
H.A.R.R.Y.
[42] SURVIVE - or die trying

heikoh
Beiträge: 37
Registriert: 23 Dez 2012, 11:29
Wohnort: Heidenheim

Re: Ausgangstreiber für FTduino

Beitrag von heikoh » 16 Apr 2017, 13:40

Hallo,

ich kann das Adfruit Motorshield nur empfehlen. Habe es selbst im Einsatz für Fischertechnik. Es blockiert keine weiteren Pins, da man es ganz einfach über I2C ansteuern kann. Damit kann man fast beliebig viele Motoren (auch Schrittmotoren, Lampen, etc,) ansteuern. Wenn man es kleiner haben möchte kann man die Platine in der Mitte "halbieren". Natürlich kann man damit dann auch dezentrale Motortreiber erstellen.

Mehr Infos unter Hardware hier: http://fischerduino.bplaced.de/.

Originalplatine (gibt es auch für Raspberry Pi, etc.) https://www.adafruit.com/product/1438. Wer mehr Zeit hat und weniger Geld ausgeben will kann für 6€ 4 Motoren und 2 Stepper ansteuern (Baugleich wie Adafruit, Openhardware).http://www.ebay.de/itm/TB6612-PCA9685-M ... Swo4pYXM~~

DIe Adafruit Bibliothek ist echt sehr gut und einfach zu programmieren.

Viele Grüße

Heiko

Benutzeravatar
MasterOfGizmo
Beiträge: 2720
Registriert: 30 Nov 2014, 07:44

Re: Ausgangstreiber für FTduino

Beitrag von MasterOfGizmo » 16 Apr 2017, 16:17

H.A.R.R.Y. hat geschrieben: Hängst Du noch ein Schieberegister davor, kannst Du am µC auch noch ein bißchen IO-Pins einsparen. Kommt halt darauf an ob Du 3 Pins für die SPI (MOSI, CLK + 'CS') gegen 4 für die Motorkontrolle eintauschen möchtest. PWM würde ich immer diekt auf einen PWM-Generator vom AVR geben und den STBY könnte man eventuell auch fest auf '1' legen.
Exakt so funktioniert der Prototyp aus neinem ersten Posting. Vor den tb6612 ist ein hc595 und die pwm kommt direkt aus dem avr. Wobei man auch da eingedchränkt ist, weil man pro Motor nur eine pwm hat und damit beide Ausgänge im die gleich 'Helligkeit' haben.

Und ja, es ist eine Frage der Logik, was 'an' ist. Aber ich fände es toll, wenn der Ftduino direkt 1:1 einen TXT ersetzen kann. Daher hat mein Prototyp ja auch identische Anschlüsse.
Arduino für fischertechnik: ftDuino http://ftduino.de, ftDuino32 http://ftduino.de/32

Benutzeravatar
MasterOfGizmo
Beiträge: 2720
Registriert: 30 Nov 2014, 07:44

Re: Ausgangstreiber für FTduino

Beitrag von MasterOfGizmo » 16 Apr 2017, 16:23

heikoh hat geschrieben: ich kann das Adfruit Motorsheld nur empfehlen.
Das nutzt ja auch genau den tb6612, den ich auch nutze. Ich mag keinen echten Arduino+Shields nehmen. Das wird mir dann zu gross und zu teuer und die Stecker passen auch nicht direkt. Mir geht es darum, ein billiges einfaches Gerät zu bauen, das genau die ft-Anschlüsse von TXT oder TX mitbringt inkl. I2C.
Arduino für fischertechnik: ftDuino http://ftduino.de, ftDuino32 http://ftduino.de/32

heikoh
Beiträge: 37
Registriert: 23 Dez 2012, 11:29
Wohnort: Heidenheim

Re: Ausgangstreiber für FTduino

Beitrag von heikoh » 16 Apr 2017, 18:05

Hallo MoG,

genau hier sehe ich den riesigen Vorteil des Layouts. Das Platinenlayout ist "Openhardware" und kann und darf leicht verändert werden. Es gibt eine fertige Bibliothek, die über I2C den Chip ansteuert (Für Raspi und Arduino, Motoren, Stepper,...), welcher wiederum die beiden Motortreiber ansteuert. Wenn Du ein eigenes Layout mit dem Design machst, dann kannst Du das Layout einfach auf deine Platine übernehmen (es ist ungefähr die Hälfte des Boards tatsächlich verwendet). Der Rest ist "Experimentierfläche" auf die ich die Fischertechnik Pins eingebracht habe. Die einzelnen "Platinen" können durch Lötbrücken auf unterschiedliche Adressen gesetzt werden. Für ein breiteres Publikum wäre ein Mäuseklavier sicherlich nützlich. Eine Erweiterung ist damit praktisch unbegrenzt möglich, es muss lediglich eine I2C Leitung vorhanden sein.

Die Boards (oder als Basis eines in einen Controller integriert) sind damit eigentlich nicht an eine spezielle Hardware gebunden und können damit unabhängig vom TXT, Arduino, Raspi, etc.verwendet werden sofern eine I2C Unterstützung vorhanden ist. Die Kosten sind extrem gering (speziell wenn man die Platinen aus der Bucht verwendet).

Bei Fragen gerne an mich wenden.

Heiko

Benutzeravatar
MasterOfGizmo
Beiträge: 2720
Registriert: 30 Nov 2014, 07:44

Re: Ausgangstreiber für FTduino

Beitrag von MasterOfGizmo » 16 Apr 2017, 22:38

Ich habe nichts dagegen, dass Du das aus Fertigplatinen von Ebay zusammen steckst. Aber ich mag halt lieber ein kompaktes Gerät. Und ja, ich könnte Teile der Platinen einfach 1:1 übernehmen. Aber wozu? Dann müsste ich alles andere drumrum drappieren. Dann kann ich doch gleich das ganze Gerät so neu entwerfen, dass es mechanisch zu TX oder TXT kompatibel ist.

Ich finde den Arduino und seine Shields ja nicht schlecht. Aber der Arduino, darauf das Motor-Shield, dazu irgendwas, das die Eingänge schützt, dazu was, das FT-kompatible Steckhülsen bereit stellt ... das wird schnell ein ziemlicher Stapel, für den man dann ein passendes Gehäuse auftreiben muss etc etc. Einen I2C-Port zur Erweiterung werde ich zwar vorsehen, aber den sehe ich tatsächlich nicht als wichtig an. Wer mehr Ein- oder Ausgänge braucht nimmt einfach einen zweiten FTduino dazu.

Es ging mir nicht so um die konzeptionelle Frage, da bin ich starrköpfig :-) Mir ging es witrklich nur um die Ausgangstreiber. Da tendiere ich zur Zeit tatsächlich eher zum MC33879 ... auch wenn das doch arg "abgekupfert" wäre.
Arduino für fischertechnik: ftDuino http://ftduino.de, ftDuino32 http://ftduino.de/32

Benutzeravatar
PHabermehl
Beiträge: 2429
Registriert: 20 Dez 2014, 22:59
Wohnort: Bad Hersfeld

Re: Ausgangstreiber für FTduino

Beitrag von PHabermehl » 16 Apr 2017, 23:02

Ehrlich gesagt finde ich das okay, denn der Ft-duino soll ja die Ausgänge des TXT am community tx-pi bereitstellen, und das kompakt, kompatibel und kosteneffizient.
Die Idee, mehrere Ft-duinos auf Lager bzw. in Modellen eingebaut zu haben und dann nur zum Betrieb den Tx-pi mit einem USB -Kabel anzuschließen, sehr charmant...
Ich finde es immer ärgerlich, wenn man den TXT aus einem Modell mal eben schnell in ein anderes Projekt stecken will und dazu die komplette Verkabelung zerrupfen muss...
https://www.MINTronics.de -- der ftDuino & TX-Pi Shop!

viele Grüße
Peter

Antworten