Projekt: LegoPi - Raspberry Pi mit C++ für Lego Roboter (statt NXT, EV3)

Modelle zum Nachbauen oder wo gibt es etwas interessantes oder Projekte?

Moderator: Moderatoren

Benutzeravatar
HaWe
Administrator
Administrator
Beiträge: 5230
Registriert: 11. Jan 2006 21:01
Wohnort: ein kleiner Planet in der Nähe von Beteigeuze

Re: Projekt: LegoPi - Raspberry Pi mit C++ für Lego Roboter (statt NXT, EV3)

Beitragvon HaWe » 3. Dez 2016 13:42

Platzhalter
Gruß,
HaWe
±·≠≈²³αβγδε∂ζλμνπξφωΔΦ≡ΠΣΨΩ∫√∀∃∈∉∧∨¬⊂⊄∩∪∅∞®
NXT NXC SCHACHROBOTER: https://www.youtube.com/watch?v=Cv-yzuebC7E

Benutzeravatar
HaWe
Administrator
Administrator
Beiträge: 5230
Registriert: 11. Jan 2006 21:01
Wohnort: ein kleiner Planet in der Nähe von Beteigeuze

Re: Projekt: LegoPi - Raspberry Pi mit C++ für Lego Roboter (statt NXT, EV3)

Beitragvon HaWe » 14. Jan 2017 20:42

Update :
erster Testlauf mit Fernsteuerung per BT-Dashboard und den jetzt selber gelöteten I/O Shields (jeweils 1+1 Lego-Motor plus 1 Lego-Touch Sensor)
und einem weiteren Sensor Shield für 4x NXT Touch + Standard I2C

LegoPi_Motor+Touch_shield.jpg
DIY Touch+i2c-Shield_233646.jpg


denn die bisherige Lösung mit Breadboards brachte keine ausreichend sicheren elektrischen Kontakte


https://www.youtube.com/watch?v=IBvyu2- ... e=youtu.be




weiteres Update:
inzwischen sind an meine beiden Motor-Shields noch je ein zusätzlicher Sensorport für je 1 Touch Sensor angeschlossen, die jetzt für die angebauten Stoßstangen als Bumper-Sensoren zur Verfügung stehen (ich hoffe, sie halten...)

robo_bumper_sensors.jpg



Die Touch-Button-GPIOs können ausgelesen werden duch:

Code: Alles auswählen

// init:
pinMode( pin_nr ,  INPUT);
pullUpDnControl( pin_nr ,  PUD_UP);

// read pin state:     pressed==LOW==0,      btnUp==HIGH==1
int pinval = digitalRead( pin_nr );
Gruß,
HaWe
±·≠≈²³αβγδε∂ζλμνπξφωΔΦ≡ΠΣΨΩ∫√∀∃∈∉∧∨¬⊂⊄∩∪∅∞®
NXT NXC SCHACHROBOTER: https://www.youtube.com/watch?v=Cv-yzuebC7E

Benutzeravatar
HaWe
Administrator
Administrator
Beiträge: 5230
Registriert: 11. Jan 2006 21:01
Wohnort: ein kleiner Planet in der Nähe von Beteigeuze

Re: Projekt: LegoPi - Raspberry Pi mit C++ für Lego Roboter (statt NXT, EV3)

Beitragvon HaWe » 2. Jan 2018 17:29

Update:
ich benutze inzwischen für meine obige Roboterplattform nun 2 BrickPi3 IO-Shields ( viewtopic.php?f=78&p=71282#p70941 ) plus eine kleine elektronische Zusatzschaltung, um an den BP3 Motorports auch stärkere Motoren als max. 2-3A pro Port anschließen zu können:

H-Bridge-Interface.jpg


Es können viele verschiedene Power-H-Bridges mit der selben Steuerlogik wie L293 oder L298 verwendet werden; an die werden dann die entsprechenden stärkeren DC-Motoren angeschlossen. Meine H-Brücken-Platinen sehen so aus (Typ BTS7960, hier 6 Stück im Verbund für 6 Power-DC-Motoren):
6xPowerMotor_Board01b.jpg



Vorteil mit den BP3 Shields:
Im Gegensatz zu den vorher verwendeten Pololu Shields etc. kann ich beliebig viele DC/Encoder-Motoren anschließen, da die BP3 stapelbar sind, dann brauche ich keine eigenen PID/PD Controller und Encoder-Lese-Routinen zu programmieren, da sie integriert sind, ich kann beliebig viele Lego-Sensoren anschließen, und habe darüber hinaus noch die i2c-sowie UART und USB Ports des Raspi für Industrie-Standard-Sensoren und -Geräte, da sie von BP3 nicht benutzt werden.

Eine Alternative wären durchaus auch Adafruit-Motor-Shields gewesen, die ebenfalls stapelbar sind für ebenfalls mehr als nur 2 oder 4 Encoder-Motoren, aber sie fallen hier komplett raus, da es keine C(++) Treiber für die gibt und Adafruit sich strikt weigert, welche dafür zur Verfügung zu stellen.
Auch sonst bietet Adafruit kategorisch keine C(++) Treiber für andere Raspi-IO-Shields (sondern ausschließlich Python), von daher sind sie hier keine Option.
Gruß,
HaWe
±·≠≈²³αβγδε∂ζλμνπξφωΔΦ≡ΠΣΨΩ∫√∀∃∈∉∧∨¬⊂⊄∩∪∅∞®
NXT NXC SCHACHROBOTER: https://www.youtube.com/watch?v=Cv-yzuebC7E


Zurück zu „Projekte, Showcase, Bauanleitungen“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 4 Gäste

Lego Mindstorms EV3, NXT und RCX Forum : Haftungsauschluss