PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Erste Schritte



roberio
06.09.2011, 10:53
Hallo zusammen!

Also ich bin absoluter Neuling - daher wollte ich mal mit folgendem Projekt anfangen:

Ich habe bei robotikhardware.de folgende Produkte ins Auge gefasst:
USB->RS232 Adapter: weil mein Notebook keine RS-232 Schnittstelle hat
PC nach I2C-Bus Adapter: um auf den I2C-Bus zu kommen
RN-DIGI Große I2C Digitalanzeige für Controller: um auch mal was zu sehen

Dazu nun die Fragen:
- So wie ich das sehe, fehlt da noch das I2C-Kabel - dummerweise finde ich das im Shop nicht - kann mir hier einer einen Tip geben?
- ich habe mir die Doku zur Digitalanzeige angesehen und da ergibt sich die Frage der Spannungsversorgung: ich meine, dass über den Adapter 5V auf den I2C-Bus gegeben werden können, in der Doku zur Digitalanzeige steht aber, dass sie mindestens 7V benötigt!?

Und dann noch die Frage: ich möchte das Ding an meinen Computer anklemmen und dann durch ein VisualBasic-Programm zumindest mal die Ziffern auf der Digitalanzeige anzeigen lassen - geht das überhaupt oder ist die Digitalanzeige überhaupt nur mit einem extra Controller zu benützen (brauche ich also noch etwas dazu)?

Und grundsätzlich: glaubt Ihr, dass das ein guter Einstieg für einen Neuling ist?

Danke für die Hilfe,
Roberio

Kampi
06.09.2011, 11:56
Willkommen erstmal :)

Das Kabel machst du dir einfach hieraus selber:

http://www.reichelt.de/Pfosten-Wannenstecker/PFL-10/index.html?ACTION=3&GROUPID=3231&ARTICLE=14571&SHOW=1&START=0&OFFSET=100&;PROVID=2402
http://www.reichelt.de/Flachbandkabel/AWG-28-10G-30M/index.html?ACTION=3&GROUPID=5030&ARTICLE=47622&SHOW=1&START=0&OFFSET=100&;PROVID=2402

Du nimmst einfach 2 Stecker und ein beliebig langes Stück des Kabels und quetscht die Stecker an jeweils ein Ende des Kabels.
Die Digitalanzeige benötigt 7V Betriebsspannung.
Und aus diesen 7V Betriebsspannung werden dann die 5V für den I²C generiert. Ich schlage vor du ließt dir erstmal das hier zum Thema I²C durch:

http://www.elektronik-magazin.de/page/der-i2c-bus-was-ist-das-21
http://www.robot-electronics.co.uk/acatalog/I2C_Tutorial.html

Du musst den I²C nämlich mit 5V über 2 Pull-up WIderstände auf High legen. Da gesagt wird das das Board schon 5V auf den Bus legt musst du das nicht mehr machen, weil das bereits auf dem Board integriert ist.
Generell kannst du I²C auch mit einem Computer generieren. Einfach mal nach Googlen. Im Endeffekt ist das ja nur eine Daten und eine Taktleitung. Und was der Mikrocontroller kann, kann ein PC auch ;)

Direkt mit I²C anzufangen halte ich für nicht soooooo gut. Ich würde mich erstmal an den Controller und die Programmierung herantasten. Das machste durch LEDs an und aus schalten, LCD ansteuern, PWM und Timer und dann später I²C. Weil dafür brauchste schon paar Grundlagen wie der Controller arbeitet usw. und je nachdem ob du das in C oder Basic machst ist es unterschiedlich schwer, sodass Erfahrungen mit der Sprache schon nicht schlecht wären.

roberio
06.09.2011, 12:32
Hallo Kamp!

Erstmal danke für die schnelle Antwort - da kann man sich ja richtig flott ins Getümmel werfen :-)

Ich fange mal mit dem Ende an: ja, I²C ist wohl anspruchsvoll - die Artikel werde ich mir noch genauestens durchlesen und dazu auch weiter recherchieren. Allerdings will ich mir den erstmal nicht ausreden lassen, denn ich habe schon öfters was davon gelesen und ich glaube, dass ich damit am meisten "anstellen" kann. Ich habe zum Beispiel im Keller ein Heimkino (mit Projektor und allem drum und dran) und da könnte man mit I²C eventuell die Lichtsteuerung und dgl. verbessern (momentan mache ich das halt alles händisch mit einer Funkfernbedienung). Naja, muß ich halt mein Hirn erstmal mehr anstrengen.

Dass ich mir das Flachbandkabel samt Stecker bei reichelt oder ähnlichen extra bestellen muß finde ich blöd - wäre schön, wenn das direkt im robotikhardware-Shop drin wäre. Bei reichelt kostet das Zeug zwar nur ein paar Cent aber die Versandkosten, Mindermengenzuschlag usw. machen daraus dann einen wahnwitzigen Preis. Also falls der Betreiber des robotikhardware-Shops hier mitliest: diese Artikel sollte man unbedingt mit aufnehmen. Vorerst werde ich mal schauen, ob ich von alter Hardware eventuell ein passendes Kabel samt Stecker ausbauen kann. Ich meine sogar, so etwas schon mal in irgendeinem Gerät gesehen zu haben.

Zum Tipp mit I²C direkt vom Computer zu generieren: super, auf die Idee wäre ich bislang noch nicht gekommen - ich wollte mir halt den Einstieg insofern erleichtern, als das ich erst mal ein paar vorgefertigte Komponenten nehme und daher sichergehen kann, dass ich hier keine Fehler mache.

Zum Thema Spannung bin ich aber noch nicht so ganz schlau geworden. Ich dachte das läuft mit den von mir ins Auge gefassten Komponenten folgendermaßen ab:

Am Computer habe ich die Steuerungssoftware. Daran angeschlossen ist über USB der RS-232-Adapter welcher wiederum den I²C-Bus zur Verfügung stellt. Und hier hatte ich dann erstmal einen Denkfehler bzw. Lesefehler. In der Anleitung zum Adapter "I²C Bus am PC" steht

"Der PC liefert leider keine 5V am RS232 Ausgang, daher muss dieser Adapter über das I2C Kabel mit 5V
versorgt werden (Pin 5 oder 7)."

Es ist also nicht so, dass die Spannung vom PC kommt, sondern vom Board her. So, nun steht aber bei dem "Digitalanzeige"-Board:

"Keine extra Spannungszuführung notwendig da Board über das I2C-Bus Kabel mit Strom verorgt wird"

So, damit ist dann zumindest klar, dass auch dieses Board die Spannung nicht liefert, sondern sich drauf verlässt, dass am I²C bereits Spannung vorliegt. Tja, was mach' ich dann, bzw. woher bekomm' ich denn jetzt nun die Spannung? Klemm' ich da einfach ein Netzteil an die I²C-Leitung? Stört das dann nicht die Signale am Bus? Oder schließ' ich ganz einfach ein paar Batterien dran?

Und übrigens: da habe ich dann immer noch die Diskrepanz von 5V am Bus und 7V die das Board mindestens benötigt. Und im der Doku zum Board steht:

"Das Board verfügt über einen 8 bzw. 9 V Spannungsregler welcher über das I2C-Buskabel mit
der Eingangsspannung (Batteriespannung) versorgt wird. Ist die Batteriespannung unter 10V, so
kann der Spannungsregler hiermit überbrückt und weggelassen werden.
Der Kurzschlusstecker muss jedoch entfernt werden, wenn die Spannung über 10V liegt"

Na was denn nun? Inzwischen bin ich völlig verwirrt jetzt steht da gar was von 10V?

:confused:

LG,
Roberio

Kampi
06.09.2011, 13:43
Die Kabel kannste ja nebenbei bestellen wenn du etwas größeres bestellst :)
Aber stimmt schon. Ein Kabel sollte meiner Meinung nach mindestens mitgeliefert werden damit man direkt loslegen kann.
Zu deinem Problem mit der Spannung.
Ich hab die Anleitung nicht gelesen (mache ich heute Mittag wenn ich Zuhause bin mal) aber ich vermute das der 10-polige Anschluss des Adapters, welcher auch für I²t, einen Spannungsanschluss hat damit dieser überhaupt arbeiten kann. Wenn du dir z.B. mal das RN-Control anschaust siehst du das am I²C Stecker genau die gleichen Pins wie am Adapter Spannung führen. Die Komponenten sind so aufgebaut das man alles mit allem nutzen kann. Dasselbe gilt denk ich mal auch fürs Board. Auch hier wird der 10-polige Stecker Pins für eine Spannungsversorgung haben. Ich vermute das ist so gemacht, damit diese Boards über angeschlossene Mikrocontrollerboards mit versorgt werden können sodass man nur eine Spannungsversorgung braucht.
Wenn du zur Spannungsversorgung des I²C ein Netzteil nimmst stört das nicht, da der I²C den Pegel auf GND zieht. Also solang deine Spannungsversorgung nicht zwischen 0V und 5V schwankt sind unregelmässigkeiten (fast) egal. Du kannst also ohne Probleme ein Netzteil oder Batterien nehmen.
Der Spannungsregler ist dafür da, falls du über die Strompins am I²C Stecker sag ich mal 12V aus einem Netzteil einspeist, um die Spannung auf die Betriebsspannung des I²C Boardes runter zu regeln. Falls du aber eine Spannung unter 10V am I²C Stecker hast, ich sag mal 7V, kannst du den Spannungsregler mit dem Jumper überbrücken. Weil damit ein Spannungsregler eine Spannung von 8 bzw. 9V liefern kann benötigt er eine höhere Eingangsspannung als die Ausgangspannung ist.
Hoffe das Hilft :)

roberio
06.09.2011, 14:11
Super!
Danke für die Antworten! Bist ja echt superschnell mit Deinen Postings!

Inzwischen habe ich im Internet aber auch noch weiter gestöbert. Suchbegriff war erstmal nur I²C. Wie Du schon vorausgesagt hattest, gibt es dazu jede Menge Infos und auch Möglichkeiten das direkt am Computer zu erzeugen. Und dann bin ich noch auf die Arduino-Plattform gestoßen. Bei Ebay gibt es da einen Händler da bekommt man diese Arduino-Komponenten spottbillig (für den Controller siehe beispielsweise Artikel 270803095516). Das würde mich natürlich einerseits freuen, andererseits frage ich mich: wo ist da der Haken?

LG,
Roberio

Richard
06.09.2011, 14:48
Hallo

Ich fange mal mit dem Ende an: ja, I²C ist wohl anspruchsvoll - die Artikel werde ich mir noch genauestens durchlesen und dazu auch weiter recherchieren. Allerdings will ich mir den erstmal nicht ausreden lassen, denn ich habe schon öfters was davon gelesen und ich glaube, dass ich damit am meisten "anstellen" kann. Ich habe zum Beispiel im Keller ein Heimkino (mit Projektor und allem drum und dran) und da könnte man mit I²C eventuell die Lichtsteuerung und dgl. verbessern (momentan mache ich das halt alles händisch mit einer Funkfernbedienung). Naja, muß ich halt mein Hirn erstmal mehr anstrengen.



Du darfst dabei nicht vergessen das I²C als Bus für Leiterplatten, auch verteilte Leiterplatten, innerhalb EINS Gerätes entwickelt wurde und nur für eher kurze Verbindungen < 1 m gedacht ist. Mit viel Tricks und extrem langsamer Übertragungsrate kann man etwas Längere Übertragungswege erzielen, liegt dabei aber außerhalb der garantierten Eigenschaften. Das Risiko von Datenverlusten liegt dabei beim Entwickler. :-) Das liegt daran das typische I²C Bausteine keine hohen Kapazitäten = Lange Leitungen speisen können ohne das es zu extremer Verformung der Signale kommt. RS 232 com Seriell kann bis zu 30 m bei gut abgeschirmter Leitung ( in Elektrisch sauberer Umgebung) genutzt werden. TTY (Stromschnittstelle) ist veraltet kommt aus der Fernschreiber Technik, Ist aber auch heute noch in der Industrie üblich da sehr sicher und relativ unempfindlich gegen Stör Signale. RS485 (Differenz Signal Übertragung) ist heute quasi Standard in vielen Bereichen da sehr Sicher, wird z.B. auch zur Steuerung von Auto Assistent Steuerung eingesetzt. Es gibt noch einige andere Bus Techniken wie LSN Bus (Bosch) oder 1 Wire u.s.w.

Alle haben ihre Vor oder auch Nachteile, Das muss immer auf den geforderten Parametern eines Objektes angepasst werden. Für I²C spricht das es sehr viele Endgeräte gibt, aber wenn größere Entfernungen überbrückt werden müssen muss man dafür zusätzlich andere Wege wählen.

Gruß Richard

Kampi
06.09.2011, 15:16
Super!
Danke für die Antworten! Bist ja echt superschnell mit Deinen Postings!

Inzwischen habe ich im Internet aber auch noch weiter gestöbert. Suchbegriff war erstmal nur I²C. Wie Du schon vorausgesagt hattest, gibt es dazu jede Menge Infos und auch Möglichkeiten das direkt am Computer zu erzeugen. Und dann bin ich noch auf die Arduino-Plattform gestoßen. Bei Ebay gibt es da einen Händler da bekommt man diese Arduino-Komponenten spottbillig (für den Controller siehe beispielsweise Artikel 270803095516). Das würde mich natürlich einerseits freuen, andererseits frage ich mich: wo ist da der Haken?

LG,
Roberio

Der Haken ist das dieses Board schon recht alt ist ;).
Aber mit Arduino kannst du nichts falsch machen. Und da die Bezahlung über PayPal ist ist es sogar recht sicher. Kauf es einfach :D es lohnt sich da die Arduino Community richtig groß ist und du da viel Hilfe bekommst, da alles Open Source usw. ist.

roberio
06.09.2011, 15:21
Danke!

Diesem Ratschlag werde ich folgen. Dass das Board alt ist, dürfte für einen Anfänger wie mich kaum von Bedeutung sein. Und soweit ich das bislang verstanden habe, ist das so modular aufgebaut, dass man später durchaus auch ein neueres Board der Arduino-Serie kaufen kann und die Sensoren usw. weiterhin verwendet werden können.

Tja, dann schauen wir mal...

LG,
roberio

Kampi
06.09.2011, 15:32
Jop. Das ist so wie bei den Sachen im Robotikhardwareshop. Die passen alle zueinander.
Und alt ist bei dem Board auch relativ ;).

roberio
22.09.2011, 09:44
So, ich wollte mal wieder ein Lebenszeichen von mir geben und über den aktuellen Stand der Dinge berichten:

Also die Wahl des Arduino scheint für mich goldrichtig gewesen zu sein. Ich bekam das Teil geliefert und konnte mich doch tatsächlich schon ein paar Minuten nach der Inbetriebnahme über eine blinkende LED freuen. Ich habe mir auch ein paar "Shields" besorgt, unter anderem ein LCD-Display und auch das war wirklich kein Problem, so kann mir der Arduino inzwischen auch schon Mitteilungen machen. Fein, fein! Da ich also zufrieden bin, habe ich mir nun Motoren und Servos bestellt - jetzt geht's also schon in Richtung Robotik.

Erste Gedanken habe ich mir schon vor längerem über ein KONKRETES PROJEKT gemacht und da wollte ich mal nachfragen, ob mir hier einer einen Ratschlag geben kann:

Ich bin ja ein Schussel und verlege ständig irgendwelche Dinge wie Schlüssel, Fernbedienungen, Geldtaschen - naja, solche Sachen halt. (okay, hier brauch' ich noch keinen Ratschlag...)

Meine Idee war nun, ich versehe die von mir am häufigsten verlegten Dinge mit RFID's und lasse dann den Roboter danach suchen.

Tja, aber irgendwie scheint das Hauptproblem hier zu sein, dass man mit den "üblichen" RFID-Antennen bis auf wenige Zentimeter an die RFID's rangehen muß - das ist hier dann natürlich sehr hinderlich (meist liegen solche Dinge ja auf Tischen und der Roboter "kriecht" am Boden rum). Ich denke, eine Reichweite von bis zu 2 Metern wäre schon gut (5-6 Meter wären das Nonplusultra) - aber da scheinen mich die Ausmaße der Antenne und auch die Anschaffungskosten zu überrollen. Abgesehen von diesem "kleinen Problem" würde ich dann meinen Roboter erstmal rumfahren lassen und sobald er ein (beliebiges) RFID in seiner Nähe wahrnimmt, liest er es aus. Entspricht das RFID dem Suchmuster, ZEIGT der Roboter dann in die entsprechend Richtung (vielleicht sogar mit einem Laserpointer?).

In einer späteren Ausbaustufe könnte er natürlich dann auch noch versuchen, das gesuchte Ding tatsächlich zu holen - aber eine Richtungsanzeige würde mir schon SEHR helfen *ggg*.

Jedenfalls ist nun die eigentliche Frage: kann man sowas kostengünstig realisieren? Oder sind RFID's hier generell der falsche Ansatz und es gibt etwas das wesentlich besser für diese Aufgabe geeignet ist?

Besten Dank,
roberio

Richard
22.09.2011, 12:04
Jedenfalls ist nun die eigentliche Frage: kann man sowas kostengünstig realisieren? Oder sind RFID's hier generell der falsche Ansatz und es gibt etwas das wesentlich besser für diese Aufgabe geeignet ist?

Besten Dank,
roberio

Laut http://de.wikipedia.org/wiki/RFID geht es mit aktiven RFID Tags auch bedeutend weiter, die brauchen allerdings eine (kleine) Stromversorgung. Das Problem ist hier nicht die Funk Reichweite sondern die Energieübertragung per Funk.

Gruß Richard

roberio
22.09.2011, 12:18
Hallo Richard!

Ach, das hatte ich ja völlig vergessen zu erwähnen. Natürlich habe ich auch schon in der Wikipedia recherchiert und gesehen, dass es mit den aktiven Tags klappt - aber ich wollte denen keine eigene Stromversorgung geben. Idealerweise sollten das nur so Tags sein, die man einfach aufkleben kann und fertig. Da werde ich wohl noch recherchieren müssen, ob's eventuell andere Systeme gibt (also komplett was anderes als RFID).

Danke jedenfalls für die Auskunft!

Gruß roberio

Richard
22.09.2011, 14:31
Hallo Richard!

Ach, das hatte ich ja völlig vergessen zu erwähnen. Natürlich habe ich auch schon in der Wikipedia recherchiert und gesehen, dass es mit den aktiven Tags klappt - aber ich wollte denen keine eigene Stromversorgung geben. Idealerweise sollten das nur so Tags sein, die man einfach aufkleben kann und fertig. Da werde ich wohl noch recherchieren müssen, ob's eventuell andere Systeme gibt (also komplett was anderes als RFID).

Danke jedenfalls für die Auskunft!

Gruß roberio

Ich kenne auch Tags ohne Spannungsquelle mit relativ großer Reichweite z.B. für Torsteuerungen die vom Auto aus bedient werden können. Da ist der Sender/Empfänger am Tor allerdings locker 1 m² groß......

Gruß Richard

roberio
22.09.2011, 15:14
*g*

Auch auf die Gefahr hin, ein alter Nörgler zu sein: 1 m² ist dann doch nicht so geeignet. Denn wenn ich zBsp an meinen Schlüssel einen 1 m² großen Tag dran hänge, dann habe ich ein ganz anderes Problem wenn ich den dann nicht finden kann (optischer Natur :) )

Bye,
roberio

Richard
22.09.2011, 15:33
*g*

Auch auf die Gefahr hin, ein alter Nörgler zu sein: 1 m² ist dann doch nicht so geeignet. Denn wenn ich zBsp an meinen Schlüssel einen 1 m² großen Tag dran hänge, dann habe ich ein ganz anderes Problem wenn ich den dann nicht finden kann (optischer Natur :) )

Bye,
roberio

Ne ne der Tag welchen der Autofahren mit sich herumschleppt hat z.B. Scheckkarten Format, der eigentliche Sender / Empfänger AM TOR hat eine ca. 1 m² große Antenne und natürlich auch die nötige Sendeleistung um im Tag genügend Energie auf zu bauen. :-) Das kommt halt auf die Entfernung an, Bei Türöffner aus ca. 1..1,5 m Entfernung haben die Antennen etwa DIN A 5 Format. Türöffner bei denen der Tag quasi drauf gehalten werden muss ca. 3x3 cm u.s.w.

Gruß Richard

roberio
22.09.2011, 15:47
Achso - ich Dummerle! Was hab' ich da nur wieder gedacht?

Also mit Din A5 Format könnte ich ja vielleicht sogar schon leben. Wenn der Roboter im Prinzip ein "Auto" mit der Grundfläche von etwa Din A4 wäre, dann könnte man quasi wie ein Segel eine Antenne mit A5 darauf anbringen. Wenn ich die dann noch rotieren lasse, könnte das mit der Ortung vielleicht doch noch klappen. Den Tip werde ich jetzt mal weiter verfolgen! Hast Du da vielleicht noch irgendeinen Link oder einen Hinweis auf ein konkretes Produkt? Ist aber nicht sooo wichtig - Tante Google wird mir da ansonsten auch weiter helfen.

Aber vorerst möchte ich ohnehin mal das Infrarot-Shield für den Arduino austesten. Denn meine Idee ist, dass ich mittels einer IR-Fernbedienung dem Arduino mitteile, WAS ich denn suche (einfache Ziffern reichen: 1=Schlüssel, 2=Fernbedienung für TV, 3=Geldtasche, 4=Kopf... *ggg*).

Danke einstweilen für die Hilfe!

LG,
roberio

roberio
28.09.2011, 12:43
Hallo!

Okay, leider bin ich nun doch nicht wirklich weiter gekommen. Entweder zu teuer oder zu groß. Vielleicht muss ich mich doch zu aktivem RFID-Tag durchringen.

Ich habe noch andere Alternativen gesucht und kam dabei zu www.flohjagd.de - ist zwar recht witzig, aber leider kann man das fertig aufgebaute Teil nirgends mehr ordern und - was noch viel schwerwiegender ist: das Teil sendet nur ein paar Stunden, dann ist der Strom alle - das war ja eigentlich mit ein Grund, warum ich keine aktiven RFID-Tags haben wollte.

In Summe bin ich also noch nicht wirklich schlauer! Allzu kompliziert darf die Elektronik außerdem auch nicht sein, da ich ja blutiger Anfänger bin. Ich bin ja schon stolz drauf, dass ich mit meinem Arduino die Signale der Infrarot-Fernbedienung richtig auswerten konnte.

Auf Amazon bin ich übrigens auf einen Schlüsselfinder gestoßen (Loc8tor Lite) - aber da das ein geschlossenes System ist, weiß ich nicht, ob ich damit was anfangen könnte - abgesehen davon kostet das Teil ja doch mindestens 68 Euro und dann habe ich noch das Risiko, dass ich das Teil vielleicht zerstöre wenn ich es öffne (um zBsp die LED-Signale abzugreifen) oder überhaupt keinen Erfolg damit habe.

Insofern bin ich nun wieder in diesem Thread richtig, denn: wer kann mir ein geeignetes Bauteil bzw. ein Modul oder dgl. empfehlen?

LG,
roberio

roberio
28.09.2011, 12:54
Hallo nochmal,

grade eben hatte ich eine ganz andere Idee. Könnte man das vielleicht realisieren?

Roboter sendet per Ultraschall ein Signal aus (meinetwegen 1 Piep für Suchgegenstand 1, 2 für Gegenstand 2 usw.).

Der Suchgegenstand "hört" dieses Signal und reagiert darauf, indem er seinerseits dann "los-ultraschallt" - so nach dem Motto: hier bin ich!

Der Roboter hat nun auch noch einen Ultraschallempfänger und dreht seinen Sensor so lange rum, bis er rausgefunden hat, aus welcher Richtung der Schall am lautesten kommt - und dann zeigt er eben in diese Richtung.

Vorteilhaft wäre hier dass es für den Arduino schon entsprechende Ultraschall-Module gibt (ich habe sogar so eines). Aber das Problem ist dann praktisch wieder das Gegenstück am Suchgegenstand. Und dann weiß ich ja auch nicht genau, wie der Suchgegenstand gerade positioniert ist. Wenn's blöd läuft, geht der Schall an die Decke und wird völlig unvorhersehbar reflektiert...

Was meint ihr? Gäb es da eine möglichst kleine Einheit mit der man das lösen kann?

LG,
roberio