scratch Raspberry Pi und fischertechnik interface

Alles rund um TX(T) und RoboPro, mit ft-Hard- und Software
Computing using original ft hard- and software
Forumsregeln
Bitte beachte die Forumsregeln!
Antworten
Benutzeravatar
fishfriend
Beiträge: 1809
Registriert: 26 Nov 2010, 11:45

scratch Raspberry Pi und fischertechnik interface

Beitrag von fishfriend » 29 Dez 2015, 21:41

Hallo...
Nach längerer Zeit melde ich zurück mit einem neuen Projekt.
Ich habe mir einen Raspberry Pi gekauft und mit einem älteren parallelem Interface gekoppelt.
Als Programmiersprache hab ich mir das mitgelieferte Scratch 1.4 genommen und mich eingearbeitet.
Das schöne an der Sprache ist die Tatsache das sie parallel ablaufende Programme erlaubt. Man kann also einfach
ein Hintergrundobjekt laufen lassen das die Daten vom und zum Interface überträgt und als zweites Objekt das eigentliche
Steuerprogramm laufen lassen...
... und es funktioniert :-)

Hier mal ein paar Anmerkungen und Schwierigkeiten auf die ich leider gestoßen bin:

Also ich bin mir nicht sicher ob die Artikel in der ft-Pedia so richtig sind. Die Reihenfolge der Daten ist anders herum als das was
ich hier gerade vorliegen habe. Wenn ich das richtig sehe ist die Verbindung zwischen den ICs so wie in meinem Schaftplan vom
ft-Interface mit seinen Varianten.
Also als erstes wird der Eingang 8, dann der E7, E6... eingelegen. Zudem muss erst der LoadIn gesetzt werden und dann erst wird mit einem
Clock-Puls das Register mit den Daten geladen. Mann muss auch eine kleine Pause einplanen da die IC auf dem ft-Interface nicht sooo schnell sind.
Der erste Eingang steht auch sofort an.

Bei den Motoren ist es genau so. Erst wird der Motor 4, dann der M3, M2... ausgegeben. Hier geht es ohne Zwischenpause.

Ich bin mir nicht sicher wie es sich mit einer frischen Installation vom Raspberry Pi verhält, da ich inzwischen mir auch Erweiterungen installiert habe
aber:
Auf vielen Internetseiten und Büchern wird beschrieben das man eine Spezialversion von Scratch braucht um die GPIOs anzusprechen. SO gibt es z.B. Scratch 7 und Scratch 7plus.
Das schein so nicht richtig zu sein. Evtl. kann das jemand von euch ja mal ausprobieren. Es gibt den Befehl:
(broadcast=) sende gpioserveron
danach kann man mit der Raspberry Pi Version Scratch 1.4 auch die GPIOs ansteuern.
Evtl. ist es auch mit neueren Versionen von Scratch möglich.

Nun hab ich bisher noch nicht die analogen Werte eingelesen, aber:
Ich hab mir ein Gertboard 1.0 besorgt um auch die Trennung zwischen den 3.3V und den 5V hinzubekommen. Dabei bin auch auf unterschiedliche
Varianten und leider auch unterschiedliche Bestückungen gestoßen. Z.B. wird als normaler Ausgangstreiber der 74AH244 (AH!!) angegeben obwohl wie
bei fast allen Internetseiten und auch bei meiner Bestückung der 74HC244 genommen wurde. Das Blöde an dieser Variante ist die Ausgangsspannung vom Gertboard, da nun die 3.3V maximal anstehen - was aber nicht reicht um das ft-interface anzusteuern. Das hat CMOS Eingänge die erst auf die halbe Versorgungsspannung reagieren. Die Lösung ist recht einfach: man darf den Trafo nicht ganz aufdrehen. (Ihr könnt euch nicht vorstellen wie lange es gedauert hat bis ich das raus hatte...)
Nun hat das Gertboard aber noch zwei weitere Möglichkeiten:
1. den ULN2803 (hab ich noch nicht ausprobiert)
2. einen 5V Jumper (J24) (Sorry, aber ich hab beim besten Willen bisher nicht verstanden ob das nun eine 5V Versorgung für das Gertboard sein soll oder nur Pinne die man benutzen kann und von dort aus die 5V vom Raspberry bekommen kann. Und ja ich hab mir sowohl die deutsche als auch die englische Beschreibung ein paar mal durchgelesen. Aber nun ja, man wird älter...)

Da die Schaltung und das Handbuch vom Gertboard frei zum runterladen sind und man sich die Schaltung mal eben auf einem Steckbrett nachbauen kann (hab ich nun auch gemacht) könnte sich evtl. mein Programm vornehmen und ausprobieren.

Beim Gertboard kann man auch zwei analoge Werte einlesen, jedoch hab ich das unter Scratch noch nicht hin bekommen :-(
Auch ob und wie man das Gertboard als Erweiterungskarte dort angibt. Evtl hat da jemand doch eine Tip übrig...
Gruß
H. Howey
ft Riesenräder PDF: ftcommunity.de/knowhow/bauanleitungen
TX-Light: Arduino und ftduino mit RoboPro

canu
Beiträge: 46
Registriert: 23 Dez 2012, 10:24

Re: scratch Raspberry Pi und fischertechnik interface

Beitrag von canu » 30 Dez 2015, 17:53

Hallo fischfriend,

ich hoffe, es ist Ok, dass ich deinen Thread nutze, um ein paar Fragen los zu werden, da ich auch gerade dabei bin, mich mit dem Raspberry Pi in Verbindung mit Fischertechnik zu beschäftigen.
Dabei habe ich folgende Fragen:
Kann man anstelle des Gerdboards auch einfach mit Widerständen einen Spannungsteiler erstellen oder einen Pegelwandler nutzen, um die 3,3V Pins des Pis mit den 5V Leitungen des Interfaces zu verbinden?
Außerdem ist mir unklar, ob es einen Unterschied macht, ob die Raspberry-Pins als Eingabe- oder Ausgabeleitungen konfiguriert sind.

Gruß
canu

Benutzeravatar
fishfriend
Beiträge: 1809
Registriert: 26 Nov 2010, 11:45

Re: scratch Raspberry Pi und fischertechnik interface

Beitrag von fishfriend » 06 Jan 2016, 22:21

Hallo...
Sorry das ich erst jetzt antworte aber ich mache noch andere Dinge die sehr Zeitintensiv sind.
Die Eingänge vom Raspberry PI sind empfindlicher als ich zu Anfang gedacht habe - sie verzeihen keine Fehler.
Es gibt zwei ziemlich blöde Gesichtspunkte beim Anschließen von Hardware:
1. Was ist wenn ein Eingang als Ausgang definiert ist? Natürlich auch umgekehrt ein Ausgang als Eingang?
Wenn man sich das mal genau anschaut hat Scratch eine Vorbelegung von Ein- und Ausgängen, die man zwar leicht
ändern kann - aber deine Hardware hängt ja schon vor dem ersten Programmstart drann - und die hat beim alten ft auch mal eben 12V !
2. Einige GPIOs werden beim Systemstart genutzt und können zu fehlverhalten führen. Da muss aufpassen welche GPIOs man nimmt.

Das Gertboard wandelt diese Pegel um (oder sollte es) und die Schaltung ist frei verfügbar und somit auch einfach nachbaubar. Ich würde für die Ausgänge die
Teile aus dem (deutschen) PDF Handbuch mit dem ULN 2803 nehmen und die Eingänge über den 74HC244.

Also einfach Wiederstände nehmen geht nicht.
Ich hab gesehen das es von Pollin ein kleines Board gibt wo man die EIn- und Ausgänge Bidirektional nutzen kann. Ob das aber auch mit
dem 12V (!) ft funktioniert weiß ich nicht.
Gruß
H. Howey
ft Riesenräder PDF: ftcommunity.de/knowhow/bauanleitungen
TX-Light: Arduino und ftduino mit RoboPro

canu
Beiträge: 46
Registriert: 23 Dez 2012, 10:24

Re: scratch Raspberry Pi und fischertechnik interface

Beitrag von canu » 07 Jan 2016, 20:38

Hallo fishfriend,

danke für deine Erklärungen. Das Problem mit der Vorbelegung der GPIOs habe ich nicht bedacht.Vielleicht sollte ich mir doch auch erst einmal ein Gertboard für weitere Experimente anschaffen.

Gruß canu

Benutzeravatar
fishfriend
Beiträge: 1809
Registriert: 26 Nov 2010, 11:45

Re: scratch Raspberry Pi und fischertechnik interface

Beitrag von fishfriend » 08 Jan 2016, 09:16

Hallo...
...und die entsprechenden Teile einfach nachbauen? Das würde nur einen Bruchteil kosten.
Ich bin mir auch nicht sicher ob z.B. das Gertboard 2 besser oder schlechter ist, zumal es scheinbar weniger Infos darüber gibt.

Übrigens macht es einen Unterschied welche Version vom Pi man verwendet. Die haben -warum auch immer- die Nummern der GPIOs
verändert. (Hier muss ich mal echt mit den Entwicklern vom Raspberry Pi 2 Modell B Version 1.1 schimpfen...)
Das hatte mich echt viel Zeit zur Fehlersuche gekostet. Selbst in deutschen Büchern z.B. zu Scratch ist es falsch drin. Das ist dann
als Errata auf einer Homepage zu finden. So etwas könnte auch den Pi Schrotten - und das bei einem "Lehrcomputer".

**************************

Ich fand halt das man alte und billig zu bekommende parallele ft Interface mit den in Mode gekommenen Pi leicht koppeln kann.
Ich weis ja nicht ob es von anderen überhaupt Interesse gibt aber selbst jüngere Kinder können mit Sratch umgehen.
Es gibt allerdings die Einschränkung das die Reaktionszeit etwas länger ist als man es von z.B. RoboPro gewohnt ist. Somit
können auch mal etwas weiter überfahren werden bis der Motor abschaltet. Für Händetrockner und Co ist das aber noch vertretbar.

Wahrscheinlich ist die Zeit bis zu einer Veröffentlichung für ein Buch zu kurz aber - hier muss ich mal mit den Buchautoren schimpfen -
es sollte mal mehr -und damit meine ich wesentlich mehr- an denjenigen gedacht werden der die Bücher ließt.
Hier mal so Beispiele zum selber nachdenken:
Wenn man eine Zeitverzögerung einbauen möchte kann man den Warte-Befehl nehmen. Weil lang ist den die kürzeste Wartezeit von Sratch?
In den Büchern die ich bisher gelegen habe steht dazu gar nichts. Das Hindernis - für deutschsprachige Anfänger ist das 99% der Beispiele
auf Englisch sind und heißt der Befehl anders.

Für Linuxianer sind manche Befehle selbstverständlich. Ich habe es nun schon mehrfach gesehen dass die Schreibweise in den Büchern unleserlich ist.
Das kommt 1. von der verwendeten Schriftart ( z.B. eine 1 von einem kleinem l zu unterscheiden) und für manche Setzer die auch mal einen
Zeilenumbruch oder Punkt für Satzende in das Beispiel für den Befehl einbauen. Von vielen hinzukommenden Witwen und Weisen,
also Überschriften zu Text oder Bildern die auf der nächsten Seite stehen, wird den Text unleserlich und somit wird das spielerische lernen für
Anfänger zur Qual. Es währe besser diese Texte mal unbedarften Lesern zum lesen zu geben.
Na ja aber das wird wohl ein Wunschtraum bleiben...

*********
Ein weiterer Ansatz ist den Raspberry Pi mit den H-Brücken vom ft- Interface direkt zu verbinden und sich somit die im Hintergrund laufende serielle Umwandlung zu sparen. Dazu kann man einfach das IC aus dem IC-Sockel rausnehmen und die Kabel direkt in den Sockel reinstecken. (Achtung 5V)
Da kann man auch sehr schnelle Roboter mit Scratch programmieren, wofür man dann allerdings mehr Erfahrung haben muss. Kostenpunkt unter 5€

Schön fand ich auch die Lösung (kein Scratch) mit einer normalen Fernbedienung das parallele ft-interface zu steuern. Auch über das Ersetzen dieses IC mit einer kleinen Platine mit einem Atmel oder Pic.

Gruß
H. Howey
ft Riesenräder PDF: ftcommunity.de/knowhow/bauanleitungen
TX-Light: Arduino und ftduino mit RoboPro

Benutzeravatar
Defiant
Beiträge: 354
Registriert: 31 Okt 2010, 21:42
Wohnort: Narn Homeworld
Kontaktdaten:

Re: scratch Raspberry Pi und fischertechnik interface

Beitrag von Defiant » 08 Jan 2016, 19:43

fishfriend hat geschrieben: Wahrscheinlich ist die Zeit bis zu einer Veröffentlichung für ein Buch zu kurz aber - hier muss ich mal mit den Buchautoren schimpfen -
Hats du den Autoren das auch geschrieben? Ich bezweifel das einer von denen dieses Forum liest.
fishfriend hat geschrieben: Übrigens macht es einen Unterschied welche Version vom Pi man verwendet. Die haben -warum auch immer- die Nummern der GPIOs
verändert.
Ja??
"Propaganda does not deceive people; it merely helps them to deceive themselves."
E Hoffer

Benutzeravatar
fishfriend
Beiträge: 1809
Registriert: 26 Nov 2010, 11:45

Re: scratch Raspberry Pi und fischertechnik interface

Beitrag von fishfriend » 15 Jan 2016, 20:20

Hallo...
Ja...
Das führt dazu das die etwas "älteren" Treiber die Signale auf dem anderen -Pin- ausgeben, die GPIO ist die selbe.
Somit stimmen die Tabellen in den Büchern nicht immer, obwohl sie mit Pi b+ angegeben sind.
Ich sag mal so. einerseits ist es toll was das Ding kann, andererseits sind da jede Menge Hürden für Anfänger eingebaut - schade.

Wenn da Interesse besteht kann ich ja meine Sachen hier weitergeben. Ich hatte damit vor ein kleines Schulprojekt evtl. eine AG zu machen.
Auch so etwas mit Scratch und fischertechnik am Tag der offenen Tür der Schule... mal schauen.

Ich werde mal versuchen ob es möglich ist ft-Großmodelle wie ein Hochregallager mit einem Raspberry PI und Python zu steuern.
Scratch geht da leider nicht, da die Schalter zu weit überfahren werden, aber das ist ein anderes Thema.
Gruß
H.Howey
ft Riesenräder PDF: ftcommunity.de/knowhow/bauanleitungen
TX-Light: Arduino und ftduino mit RoboPro

Benutzeravatar
fishfriend
Beiträge: 1809
Registriert: 26 Nov 2010, 11:45

Re: scratch Raspberry Pi und fischertechnik interface

Beitrag von fishfriend » 19 Jan 2016, 12:53

Kleines Update
Also man muss es nur wissen...
Seit Oktober 2015 ist eine "neuere" Version von Scratch auf der Raspberry Pi.org Seite womit man die GPIOs direkt ansprechen kann. Wenn man also über dieses Noobs seine SD Karte macht bekommt man es mit.
Die Beispiele aus den Spezialversionen von Scratch kann man so übernehmen.
Siehe Seite:
https://www.raspberrypi.org/blog/a-new- ... dded-gpio/

Ich hatte schon gedacht das die Spezialversionen Teile des normalen Scratch überschrieben haben, dem ist aber nicht so. Für Leute die das mal ausprobieren wollen ist es somit viel einfacher geworden.
Benutzte.Pinbelegung:
Raspberry.Pi.B+.Ver1.1........Gertboard.........parallel.ft.Interface..........................ft.Stecker..ft-Name........geht.im.Interface.an......................Scrach.Nr..(Achtung.bei.21=27.!)
Pin.11.=.GPIO.17.Ausgang.......Pin.17.B1........1.STR..Übernahme.Motorausgänge........13............Load.Out.......IC.4094.Pin.1.................................GPIO.17
Pin.12.=.GPIO.18.Ausgang.......Pin.18.B2........2.CP....Clock..................................12............Clock............IC.4094.Pin.2.und.IC.4014.Pin.10........GPIO.18
Pin.13.=.GPIO.21.Ausgang.......Pin.21.B3........3.DA....Daten.Motorausgänge..............11............Data.Out.......IC.4094.Pin.3.................................GPIO.27
Pin.15.=.GPIO.22.Ausgang.......Pin.22.B4........9.PE....Übernahme.Eingänge...............14............Load.In.........IC.4014.Pin.9.................................GPIO.22
Pin.16.=.GPIO.23.Eingang.......Pin.23.B5.........3.Q7...Daten.Eingänge........................4...........Data.In..........IC.4014.Pin.3................................GPIO.28
..............................................................................................................1............GND=.Masse.(auch.2,19.und.20)

Belegung.(X).ft.Stecker.Interface.wenn.man.auf.die.Löcher.schaut,.Nase.oben:
....................Nase
1...3...5...7....9...11..13..15..17..19
X.......................X...X
2...4...6...8...10..12..14..16..18..20
....X...................X...X

Das Schöne ist halt das man auch mal 2, 3 oder mehr parallele ft Interfeces anschließen kann und dann halt für jedes 8 Eingänge und Ausgänge dazu bekommt.
Jatzt stellt sich nur noch die Frage wie ich das Scratch Programm als Code hier ins Forum kriege... mal schaun
Gruß
PS OK die Forumssoftware löscht die Leerzeichen - wird noch in lesbar geändert.
H. Howey
ft Riesenräder PDF: ftcommunity.de/knowhow/bauanleitungen
TX-Light: Arduino und ftduino mit RoboPro

Benutzeravatar
uffi
Beiträge: 404
Registriert: 24 Jan 2014, 16:21
Wohnort: München

Re: scratch Raspberry Pi und fischertechnik interface

Beitrag von uffi » 03 Feb 2016, 13:40

Hallo fishfriend,

Du hattest oben geschrieben:
Also ich bin mir nicht sicher ob die Artikel in der ft-Pedia so richtig sind. Die Reihenfolge der Daten ist anders herum als das was
ich hier gerade vorliegen habe. Wenn ich das richtig sehe ist die Verbindung zwischen den ICs so wie in meinem Schaftplan vom
ft-Interface mit seinen Varianten.
Also als erstes wird der Eingang 8, dann der E7, E6... eingelegen. Zudem muss erst der LoadIn gesetzt werden und dann erst wird mit einem
Clock-Puls das Register mit den Daten geladen. Mann muss auch eine kleine Pause einplanen da die IC auf dem ft-Interface nicht sooo schnell sind.
Der erste Eingang steht auch sofort an.

Bei den Motoren ist es genau so. Erst wird der Motor 4, dann der M3, M2... ausgegeben. Hier geht es ohne Zwischenpause.
Also in meinem Artikel in ft:pedia 02/2014

"Nutzung des Universal-Interfaces 30520 als
Port-Erweiterung an einem Mikrocontroller
Dirk Uffmann"

habe ich das auf Seite 32 genauso beschrieben wie Du.

Welchen Artikel meinst Du denn, wo es anders beschrieben wird?

Gruß, Dirk

Benutzeravatar
fishfriend
Beiträge: 1809
Registriert: 26 Nov 2010, 11:45

Re: scratch Raspberry Pi und fischertechnik interface

Beitrag von fishfriend » 10 Feb 2016, 22:47

Hallo...
Hallo Dirk
Ich bezog mich auf den Artikel 01/2014 Parallel Interface durch Arduino gesteuert (1) auf S.24 usw.
Die Diskrepanz scheint auf den Seiten 26 und 27 zu sein.

Ich gebe zu das ich momentan etwas, sagen wir mal "angespannt" bin, da ich momentan bei -allem- was ich gerade mit fischertechnik , Arduino und dem Raspberry mache,
nur noch zurückentwickeln muss, um die Sachen zum laufen zu bekommen.
Mal so ein Beispiel:
Da hab ich mir einen kleinen ft-Plotter mit Schrittmotoren gebaut und möchte nun mit den Raspberry die Vektorgrafiken die man mit dem Hauseigenen Malprogramm als SVG Dateien
speichern kann ausgeben. Ok da gibt es im WWW ein Beispiel wo man z.B. mit Motoren aus alten CD-Laufwerken so etwas aufgebaut sieht. Versucht man das heute 1:1 mit ft zu übertragen
stellt man fest das es nun bisher drei verschiedene GPIO Schnittstellen am Raspberry gab: GPIO0, GPIO1, GPIO2, GPIO3, GPIO21 und GPIO27. Dumm nur wenn man dann die Originalprogramme
in einer Programmiersprache oder einem fremden Betriebssystem hat was man nicht sooo gut beherrscht und sich dann langwierig einarbeiten muss.
Wenn man dann z.B. mit einem Gertboard die Schnittstellen schützen will, sind wieder die GPIO Nummern anders.

Ist halt blöd wenn man versucht etwas nachzubauen und es so nicht läuft.
Ich wird nochmal die Sachen zusammenstellen und ins Netz stellen, zumindest um mit der aktuellen Hardware ft-Projekte bauen zu können.
Gruß
H.Howey
ft Riesenräder PDF: ftcommunity.de/knowhow/bauanleitungen
TX-Light: Arduino und ftduino mit RoboPro

Benutzeravatar
uffi
Beiträge: 404
Registriert: 24 Jan 2014, 16:21
Wohnort: München

Re: scratch Raspberry Pi und fischertechnik interface

Beitrag von uffi » 11 Feb 2016, 11:35

Hallo Holger,

ja, Du hast recht! In dem Artikel von Jens Lemkamp ist die Reihenfolge, in der die Eingänge und Ausgänge bit-weise übertragen werden, nicht korrekt dargestellt. Vielleicht sollten wir ihn darauf aufmerksam machen.

Und ich verstehe Dein Problem sehr gut.

Mit dem ft-Parallelinterface bist Du aber ja eh der Experte und kennst Dich bestens aus... stammen nicht die Schaltpläne sogar von Dir?

Gruß, Dirk

Benutzeravatar
fishfriend
Beiträge: 1809
Registriert: 26 Nov 2010, 11:45

Re: scratch Raspberry Pi und fischertechnik interface

Beitrag von fishfriend » 11 Feb 2016, 21:11

Hallo...
Ja, die Pläne sind von mir.
Wobei ich zugeben muss das ich deinen Artikel übersehen habe. Mir ging es ja um die Übertragung erst vom Raspberry und später vom Arduino.

Ich vermute mal das es in dem Bericht die Beschreibung vom Schaubild ist. Zum Teil sind die Darstellungen ja von fischertechnik selbst, bzw. aus einem Buch die die damals von ft bekommen haben.
Na ja zumindest hab ich das Problem schon mal gelöst. (Jetzt suche ich erst mal ob der GPIO 0 oder der Pin im C-Programm angegeben wurde um den Raspberry Pi B+ zum ansteuern zu bewegen...)

Ich vermute mal das die Daten vom Programm rotiert werden, um Bitweise an die (serielle) Schnittstelle weitergegeben werden. So weit ich das von anderen Programmiersprachen kenne kann man links oder rechts rotieren.
Somit muss man die einzelnen Bit in einer bestimmten Reihenfolge angeben. Es kann sein das die benutzte Funktion auch nur eine Richtung beherrscht und somit diese Reihenfolge zustande kommt.
Ich habe das auch noch nicht weiter nachgeprüft.

Evtl sollte man wirklich einen kleinen Hinweis mal machen. Dirk, kannst du das übernehmen?

(Ist schon fast so wie bei den PDF- Dateien der Hobby Büchern. Die gibt es ja schon ein paar Jahre.
Ist schon mal jemanden aufgefallen das -eine- Seite in einem der Hobbybücher fehlt? :o )
Gruß
H. Howey
ft Riesenräder PDF: ftcommunity.de/knowhow/bauanleitungen
TX-Light: Arduino und ftduino mit RoboPro

Benutzeravatar
uffi
Beiträge: 404
Registriert: 24 Jan 2014, 16:21
Wohnort: München

Re: scratch Raspberry Pi und fischertechnik interface

Beitrag von uffi » 12 Feb 2016, 16:28

ok. ich schicke eine PN an Jens.

In ft:pedia 4/2015 habe ich übrigens noch einen Artikel geschrieben, wie man die Motoren am ft-Parallelinterface sogar mit PWM ansteuern kann. Vielleicht kannst Du davon was für Deine Arbeit brauchen...

"PWM-Motorsteuerung am fischertechnik-Universal-Interface"

Gruß, Dirk

Benutzeravatar
fishfriend
Beiträge: 1809
Registriert: 26 Nov 2010, 11:45

Re: scratch Raspberry Pi und fischertechnik interface

Beitrag von fishfriend » 14 Feb 2016, 08:31

Hallo...
Motorsteuerung
Es gibt zwei Lösungen um fischertechnik mit einem Arduino oder Raspberry zu verbinden:
1. Man nimmt normale Motoren und zählt Impulse, entweder durch einen Taster oder über eine Lichtschranke.
2. Man steuert das Ganze mit Schrittmotoren und hat bis auf "vergessene" Schritte die genaue Position.

Schimpf-Modus=AN :twisted:
Alles könnte ja sooooo einfach sein, aber dann kamen die Revisionen. Es ist kaum zu glauben das zu den Unterschieden zwischen den Raspberry Pi Modellen auch noch Unterschiede
in den Treibern kommen. Hinzu kommen nun die Bezeichnungen z.B. auf dem GerBoard, um die Schnittstellen von der 3,3V Ebene mit der 5V oder 12V Ebene zu trennen.

Mal so als Beispiel:
Auf der wirklich hervorragenden Internetseite http://www.HomoFaciens.de gibt es gute Bauanleitungen wie man selber Plotter oder CNC Maschinen bauen kann. Auch die Videos geben
einen guten Eindruck und man ist versucht das 1:1 mit fischertechnik nachzubauen. - Wenn man denn genau die Versionen z.B. vom Raspberry hat geht es.
Nehmen wir mal den Plotter CDROM.
Wenn man sich die Version vom Download nimmt und sich das Schaltbild anschaut, sieht man das es sich um eine ältere Version vom Raspberry handelt. Was aber auch auffällt
ist die Bezeichnung der GPIOs. Die stimmen nicht mit der normalen Zählweise wie sie in den Büchern zu finden ist überein. (Z.B.: Schnelleinstieg Raspberry Pi S.149 (das Buch gibt es als kostenlosen Download) Die letzten Seiten/Kapitel mit den Versuchen sind 1:1 von Conrad in dem Kasten Raspberry Pi - verstehen und anwenden übernommen worden )
Diese Nummern auf dem Schaltplan kommen von der Datei wiringPi.h die in GCC eingebunden ist (siehe http://www.wiringpi.com/pins/).
Somit hat der Pin13 der Schnittstelle folgende Bezeichnungen:
... PIN13 - Auf der Platine und in manchen Programmiersprachen
... GPIO 2 -in C oder CPP wenn man die wiringPi.h einbindet
... GPIO 21 - wenn man einen Raspberry der Rev.1 hat
... GPIO 27 - wenn man einen Raspberry der Revision 2 hat

Oder wenn man also z.B. das Servo mit dem "GPIO 8" (auf dem Schaltbild) auf dem Raspberry Pi B+ Rev. 2.0 verbinden will muss man den GP 0 auf dem GertBoard nehmen, was eigentlich der GPIO2 auf dem Raspberry ist.
-Geil nicht?
Anmerkung: ich hab noch nicht versucht das C-Programm zu Kompilieren. So wie ich mein Glück kenne gibt es bestimmt eine neue Version, von was auch immer...

Tipp: Bei den Arduino Versionen braucht man einen Linux Rechner der den Plotter steuert. Das ist eine Voraussetzung die erst nicht ersichtlich ist. Oder man programmiert selber ein Abfolge und speichert sie auf dem Arduino.
Tipp2: Auf der Seite von http://www.HomoFaciens.de gibt es im Forum die Plotter CDROM V0.4 die ist jedoch älter als die Version im Downloadbereich wo auf dem Bild V 0.3 steht.


Schimpf-Modus=AN :twisted: :twisted: (hatte ich den eigentlich ausgeschaltet? ;) )
Hatte ich irgend was zum Thema rückentwickeln gesagt?
Bei Conrad gibt es von Grove einen Ultraschall Entfernungsmesser der die Entfernung in cm angibt. OK 15 Euro kann man ja mal riskieren. Auf den Internetseiten z.B. Conrad oder vom Hersteller kann man sich Dateien runterladen.
Eigentlich soll man ja das Basis-Board benutzen, aber es gibt Beispiele wo man das Teil direkt verbinden kann.
Jedoch spätestens beim Pinsuchen fällt auf, dass - irgendwie die Bezeichnungen anders sind. Klar im Internet sind Bilder und Schaltungen ausschließlich von Sensoren der Version 1.0 zu finden.

Tja und das Teil was ich hab ist...
Vorhang auf...

Version 2.0

Und auf dem steht am Pin 3 NC = auf gut deutsch nicht kaputtmachen - Ähhm also nicht anschießen. :D
Und nun?
Also das muss man sich mal Vorstellen, da wir jahrelang entwickelt, das Ding von Asien nach Europa gebracht und es wird extra jemand eingestellt, der nur abwartet bis ich in den Laden komme und kurz vorher, vor die anderen
Packungen diese neue mit der Version 2.0 einzuhängen...
Mir fehlen die Worte...
Natürlich ist von einem IC die Bezeichnung fein säuberlich abgeschliffen, aber auch das sollte kein Problem für mich mehr sein. Man sammelt ja Erfahrungen mit der Zeit und die Treiber sind ja offengelegt - wenn sie den damit laufen...
Gruß
H.Howey (fishfriend)
PS
Schimpf-Modus=AUS
und das Ding erstmal an die Seite leg...
ft Riesenräder PDF: ftcommunity.de/knowhow/bauanleitungen
TX-Light: Arduino und ftduino mit RoboPro

lemkajen
Beiträge: 123
Registriert: 05 Sep 2011, 12:58
Wohnort: Rhede (NRW)

Re: scratch Raspberry Pi und fischertechnik interface

Beitrag von lemkajen » 14 Feb 2016, 09:51

uffi hat geschrieben:Hallo Holger,

ja, Du hast recht! In dem Artikel von Jens Lemkamp ist die Reihenfolge, in der die Eingänge und Ausgänge bit-weise übertragen werden, nicht korrekt dargestellt. Vielleicht sollten wir ihn darauf aufmerksam machen.


Gruß, Dirk

Moin zusammen, Danke für die Hinweise.

ihr habt recht, im Text ist die Reihenfolge von M1-M4 falsch angegeben. Ich habe den Grund auch gefunden, eine frühere Version des Programmes verwendete den Shift-Out-Befehl mit der umgekehrten Reihenfolge der auszugebenden Bits. Man kann definieren ob das "most significant bit " oder das "least significant" zuerst ausgegeben werden soll:
MSBFIRST or LSBFIRST
Im Zuge von Modifikationen habe ich es Text dann falsch beschrieben.

Ich habe Dirk (Fox) bereits angeschrieben und wir schauen dann, wie wir so eine Korrektur handhaben wollen. das könnte ja auch richtungsweisend sein, wie wir in der ftpedia grundsätzlich
im Falle eines Fehlers , der sich nie ganz vermeiden läßt, vorgehen wollen.

Viele Grüße

Jens
----
Jens Lemkamp

Benutzeravatar
fishfriend
Beiträge: 1809
Registriert: 26 Nov 2010, 11:45

Re: scratch Raspberry Pi und fischertechnik interface

Beitrag von fishfriend » 15 Feb 2016, 08:05

lemkajen hat geschrieben: Moin zusammen, Danke für die Hinweise.

ihr habt recht, im Text ist die Reihenfolge von M1-M4 falsch angegeben. Ich habe den Grund auch gefunden, eine frühere Version des Programmes verwendete den Shift-Out-Befehl mit der umgekehrten Reihenfolge der auszugebenden Bits. Man kann definieren ob das "most significant bit " oder das "least significant" zuerst ausgegeben werden soll:
MSBFIRST or LSBFIRST
Im Zuge von Modifikationen habe ich es Text dann falsch beschrieben.

Ich habe Dirk (Fox) bereits angeschrieben und wir schauen dann, wie wir so eine Korrektur handhaben wollen. das könnte ja auch richtungsweisend sein, wie wir in der ftpedia grundsätzlich
im Falle eines Fehlers , der sich nie ganz vermeiden läßt, vorgehen wollen.

Viele Grüße
Jens
Hallo...
Ich würde vorschlagen das mit dem Shift-Out zu erklären, da bestimmt andere auch darüber stolpern werden oder so einen etwas weiteren Einblick in die Programmiersprache erhalten.

Freu-Modus = An

Mein fischertechnik - Plotter gesteuert von einem Raspberry bewegt sich! :D :D
Das schöne daran ist, dass man nun Zeichnungen auf dem Raspberry machen und sofort dort ausgeben kann.
Das Ganze dann als CNC umzubauen, dafür liegen die Teile schon bereit.

Tipp: Alte große graue ft-Motoren die kaputt gegangen sind oder die man defekt auf dem Flohmarkt findet, kann man entkernen und einen 500er (550er) Modellbaumotor reinschieben.
An die Welle kann man Futter von Kleinbormaschinen anschrauben. So hat man die Möglichkeit die Motoren direkt mit ft zu verbinden und so Fräser und Bohrer anzubringen.
Die Maschinen funktionieren dann wirklich.

Gruß
H.Howey (fishfriend)
ft Riesenräder PDF: ftcommunity.de/knowhow/bauanleitungen
TX-Light: Arduino und ftduino mit RoboPro

Antworten