Forum: Mikrocontroller und Digitale Elektronik Wie kann ich Daten von einen Triple Axis Accelerometer an den PC per USB senden?


von Fabian A. (kraugon)


Lesenswert?

Hallo Forum-Member,

ich möchte gerne anfangen ein bisschen mit Mikrocontroller zu arbeiten. 
Ich bin im Moment noch bei Null außer was das Programmieren anbelangt, 
da hab ich schon relativ viel Erfahrung mit C.
Ich hab mir nun ein Projekt vorgenommen, weil ich sehr fasziniert von 
der Sache bin die ich machen will, möchte ich auch gerne so einsteigen. 
Auch wenn das ein relativ schwerer Einstieg sein könnte. Ich lerne so 
aber auch viel besser.

Also kommt ich mal grob zu dem was ich machen will. Ich möchte von einem 
oder mehrere 3 Axis Accelerometer Modulen (diesen hier eventuell: 
https://www.sparkfun.com/products/10955) die Koordinaten per USB an den 
PC senden und mit einer Software dann auslesen.

Jetzt meine Frage wie mach ich das am besten?
Eine weitere Frage wäre: Was ist der unterschied zwischen 3 Axis 
Accelerometer und 3 Axis Gyro?

Ich hab schon so eine Ahnung, aber will mir nicht die Materialien 
bestellen und dann sehen wie ich alles falsch mache.

Freue mich auf eure Antworten und danke hier schon mal im voraus für 
jeden der mir versucht zu helfen.

von Karl H. (kbuchegg)


Lesenswert?

Fabian Andrä schrieb:
> Hallo Forum-Member,
>
> ich möchte gerne anfangen ein bisschen mit Mikrocontroller zu arbeiten.
> Ich bin im Moment noch bei Null außer was das Programmieren anbelangt,
> da hab ich schon relativ viel Erfahrung mit C.
> Ich hab mir nun ein Projekt vorgenommen, weil ich sehr fasziniert von
> der Sache bin die ich machen will, möchte ich auch gerne so einsteigen.
> Auch wenn das ein relativ schwerer Einstieg sein könnte.

Nicht nur könnte.
Das IST ein schwerer Einstieg. Viel zu schwer.

> Ich lerne so
> aber auch viel besser.

Mit Sicherheit nicht. Du hast als Baby auch nicht mit Radfahren 
angefangen, sondern mit Krabbeln.

> Jetzt meine Frage wie mach ich das am besten?

Indem du erst mal dein Projekt an acta legst und dort anfängst, wo alle 
sinnvollereise anfangen. Mit einem µC und einer LED. Wenn du die unter 
Kontrolle hast, dann kommen noch Zig andere Sachen und in einem halben 
Jahr kann man sich dann auch mal über I2C, TWI und USB unterhalten.

von Frank M. (frank_m35)


Lesenswert?

Naja, immerhin hast du Erfahrung in C, das ist doch schon mal was.
Am besten du kaufst dir dann ein fertiges Experimentierboard mit uC und 
allem drum und dran (Beispielcode, Schaltung, ...), sodass du am Anfang 
weißt, die Hardware funktioniert und du musst dich erst mal nur um die 
Software kümmern. Und auch dort hast du dann schon etlichen 
Beispielcode.

USB nativ am Controller ist etwas aufwendig, einfacher ist wenn du die 
Daten über die serielle Schnittstelle (RS232) mittels eines Adapter ICs 
(FTDI) zum PC überträgst.

Dennoch, wenn du noch nie was mit uC gemacht hast solltest du dir 
vielleicht auch ein passendes Buch holen, das im Schnelldurchgang die 
Grundlagen an Beispielen erläutert um einfach schnell und leicht in die 
Materie einsteigen zu können. Wenn du Englisch gut kannst, dann wirst du 
vermutlich mit einem englischen Buch besser fahren.

Ein Beschleunigungssensor misst die Beschleunigung. D.h. liegt er 
einfach nur da, so misst er die Erdbeschleunigung von 9.81m/s^2 = 1g in 
die Achse die orthogonal zur Erdobefläche steht. Beschleunigst du ihn 
nun horizontal, so misst du auch auf den horizontalen Achsen deine 
Beschleunigung. Bewegst du ihn konstant so misst er nichts. Lässt du ihn 
im freien Fall fallen, so misst er auch in der orthogonal zur 
Erdoberfläche stehenden Achse nichts mehr.

Ein Gyroskop misst die Rotation. D.h. steht es still, misst es nichts 
bis auf Rauschen. Bewegst du es auf einer Linie, misst es auch nichts. 
Drehst du es jedoch, misst es die Drehung, in Winkelgeschwindigkeit. 
(nicht die Beschleunigung).

Am Anfang am interessantesten ist der Beschleunigungssensor.

von Fabian A. (kraugon)


Lesenswert?

Das ist es aber das mir das einfach keinen Spaß macht. Leds nun blinken 
zu lassen oder so ein Night Rider Effekt zu machen usw. interessiert 
mich so wenig das ich da einfach kaum Lust hab und das meiste davon ist 
einfach so einfach das ich denke das ich den schritt überspringen kann.

Ich weis es kann relativ dumm wirken das ich mit sowas anfangen will 
aber für mich ist es das in keinster Weise!


Ich möchte keine Beispiele oder sonst irgendwas ich möchte nur einen 
groben Lösungsweg.

- Was brauch ich?

- Auf was sollte ich achten?

- eventuell noch wenn man nett ist (Wie sende ich die Daten an den PC 
und binde sie dort in ein Programm ein?)

Wie gesagt ich erwarte keine sample codes oder auch nähere Erklärung zu 
den einzelnen Schnittstellen, da werde ich mich schön selber schlau 
lesen.

von Dr.Who (Gast)


Lesenswert?

Fabian Andrä schrieb:
> Ich weis es kann relativ dumm wirken das ich mit sowas anfangen will
> aber für mich ist es das in keinster Weise!

Warum fragst du denn, wenn du die Meinung von den Experten eh nicht 
hören willst?

Mach dein Projekt.

Fabian Andrä schrieb:
> - Was brauch ich?

Sensor, µC, FTDI

Fabian Andrä schrieb:
> - Auf was sollte ich achten?

Die Liste wäre zu lang um sie in einen Post zu quetschen.

Fabian Andrä schrieb:
> Wie sende ich die Daten an den PC
> und binde sie dort in ein Programm ein?

Über die serielle Schnittstelle des µC, der wandelt das, und dann kannst 
du die Daten am PC auswerten. Weisst ja wie man C programmiert, dann 
sollte das nicht so ein Problem darstellen.

von Fabian A. (kraugon)


Lesenswert?

Vielen Dank für die Erklärung.

Was ich brauch ist dann wohl das Gyroskop.
Ich möchte auch gerne über den USB Port arbeiten, allerdings kann ich da 
auch gerne mit einer serielle Schnittstelle anfangen. Auch danke für 
diesen Tipp.

von Dr.Who (Gast)


Lesenswert?

Ach ja..

Fabian Andrä schrieb:
> Wie gesagt ich erwarte keine sample codes oder auch nähere Erklärung zu
> den einzelnen Schnittstellen, da werde ich mich schön selber schlau
> lesen.

Du erarbeitest dir alles schön selber, ja?

Fabian Andrä schrieb:
> Eine weitere Frage wäre: Was ist der unterschied zwischen 3 Axis
> Accelerometer und 3 Axis Gyro?


Und trotzdem bist du zu faul um 2 Sekunden zu googeln.

"Unterschied Gyro Accelerometer" bringt das als zweites Resultat diesen 
Thread ans Licht:

Beitrag "Unterschied Gyro und 3Achs Accelerometer Arduino"

von Karl H. (kbuchegg)


Lesenswert?

Fabian Andrä schrieb:
> Das ist es aber das mir das einfach keinen Spaß macht. Leds nun blinken
> zu lassen oder so ein Night Rider Effekt zu machen usw. interessiert
> mich so wenig das ich da einfach kaum Lust hab und das meiste davon ist
> einfach so einfach das ich denke das ich den schritt überspringen kann.

OK. Wenn du meinst.
Das zu lernende beim Knight Rider Lauflicht, bzw. bei 'Lichtspielen' 
sind nicht die Lichtspiele an sich, sondern die Technik des 
Programmaufbaus auf einem µC und welche Möglichkeiten es gibt, sowas wie 
Multitasking zu realisieren.

von Fabian A. (kraugon)


Lesenswert?

Ok, auch vielen Dank für diese Infos.

Ich respektiere das, es ist klar das jeder einem am Anfang rät "Fang 
erstmal bei den Grundlagen an". Ist ja auch nur nett gemeint! Nur leider 
bin ich so ein Mensch der dann schnell wieder das Interesse Verliert. 
Vor allem wenn ich wie jetzt eine tolle Idee hab die ich so gern 
umsetzten möchte.

von Fabian A. (kraugon)


Lesenswert?

Ok da muss ich zugeben die frage tat sich mir bei Beitrag schreiben auf 
und ich hab sie dann einfach mit einfließen lassen. Aber da hätte ich 
echt googln können.

von Fabian A. (kraugon)


Lesenswert?

> Karl Heinz Buchegger schrieb:
> OK. Wenn du meinst.
> Das zu lernende beim Knight Rider Lauflicht, bzw. bei 'Lichtspielen'
> sind nicht die Lichtspiele an sich, sondern die Technik des
> Programmaufbaus auf einem µC und welche Möglichkeiten es gibt, sowas wie
> Multitasking zu realisieren.

Das geht mir ja hierbei nicht verloren. Ich hab mir schon einiges 
Angeschaut und werde mir noch viel mehr dazu durchlesen / anschauen also 
sollte das mit der Verständnis auch kein Problem darstellen.

von Viktor N. (Gast)


Lesenswert?

Es gibt einen Riesenunterschied zwischen etwas auf dem PC 
zusammenkloppen und auf erinem Controller. auch wenn die Sprache C 
Aehnlichkeiten vermuten laesst. Aufm PC  kann man fast alles per 
Debugger single-steppen. Und findet so fast jeden Fehler. Aufm 
Controller geht das natuerlich nicht, denn die meist ablaufenden 
Prozesse sind schon lange vorueber. Man muss also etwas von Echtzeit 
programmierung verstehen.

Und man sollte ein Oszilloskop haben.

von Dr.Who (Gast)


Lesenswert?

Ok. Da würde ich dir trotzdem was aus der Ecke Arduino o.ä. empfehlen, 
wo du die fertige Hardware hast. Vielleicht habe ich es überlesen aber 
von Elektrotechnik resp. Elektronik scheinst du nicht viel zu wissen.

Die Alternative wäre übrigens ein µC mit integrierter USB Schnittstelle, 
z.B. AT90USB82, da würde dir den FTDI ersparen.

Gruss

von Dr.Who (Gast)


Lesenswert?

Viktor N. schrieb:
> Und man sollte ein Oszilloskop haben.

Jo, das ist (gerade in der Sensortechnik) fast unumgänglich.

von Frank M. (frank_m35)


Lesenswert?

Fabian Andrä schrieb:
> Vielen Dank für die Erklärung.
>
> Was ich brauch ist dann wohl das Gyroskop.
> Ich möchte auch gerne über den USB Port arbeiten, allerdings kann ich da
> auch gerne mit einer serielle Schnittstelle anfangen. Auch danke für
> diesen Tipp.

Les mal die Antworten genauer. Der uC wird mit dem PC über ein USB-Kabel 
verbunden, am uC jedoch gibst du die daten über die serielle 
Schnittstelle aus, da du die USB Schnittstelle nicht hinbekommen 
würdest. Ebenso am PC wirst du dann mit einer virtuellen seriellen 
Schnittstelle arbeiten, da es einfacher ist als sich mit USB Treibern 
herumschlagen zu müssen. Es sei denn, du willst ein Eingabegerät 
basteln, dann bietet sich direktes USB an, da du dann den HID Treiber am 
PC verwenden kannst. Jedoch wirst du das am uC nicht hinbekommen, so 
ganz ohne Vorerfahrung.

Ein Gyroskop alleine braucht man selten. Ich weiß ja nicht was du machen 
willst, aber normalerweise verwendet man für die Standardsachen 
(Bewegung) Beschleunigungssensoren, für komplexe 3D Bewegungen dann 
gleich ein IMU, d.h. Beschleunigungssensor, Gyroskop, Magnetfeldsensor.
Das wiederum wird dich auch komplett überfordern, also wenn du schon so 
hart direkt einsteigen willst, dann kannst du zwar eine Platine mit 
allen drei Bauteilen drauf dir besorgen, aber fange erst mit dem 
Beschleunigungssensor an.


Schau mal hier nach einem Board das deinen hohen Ansprüche genügt:
http://www.mikroe.com/development-boards/

von Lothar (Gast)


Lesenswert?

Hier werden mal wieder viel zu komplizierte Lösungen propagiert. Die 
einfachste Lösung ist USB HID und ein MC der einen USB Stack im ROM hat.

Auf Windows Seite gibt es fertigen Code, der MC wird automatisch als 
Generic HID erkannt. Einfach das hier kompilieren:

http://www.lvr.com/hidpage.htm
:Visual Basic .NET generic_hid_vb_46

Als MC würde ich NXP LPC13xx, hier gibt es einfachen fertigen Code:

http://www.lpcware.com/content/nxpfile/lpcxpresso-example-projects-and-cmsis-library-lpc13151617454647
:usbhidrom

Wenn man z.B. X-Y-Z als 16-bit Werte senden möchte, macht man:

HidDevInfo.InReportCount = 6;  // 6 byte
HidDevInfo.SampleInterval = 0x20;  // Abtastrate
HidDevInfo.InReport = GetInReport;  // Handlerfunktion

Günstiges Board und Accelerometer (Source Code ist hier dabei):

https://www.olimex.com/Products/ARM/NXP/LPC-P1343/
https://www.olimex.com/Products/Modules/Sensors/MOD-SMB380/

von Fabian A. (kraugon)


Lesenswert?

>Frank M. schrieb:
> Les mal die Antworten genauer. Der uC wird mit dem PC über ein USB-Kabel
> verbunden, am uC jedoch gibst du die daten über die serielle
> Schnittstelle aus, da du die USB Schnittstelle nicht hinbekommen
> würdest. Ebenso am PC wirst du dann mit einer virtuellen seriellen
> Schnittstelle arbeiten, da es einfacher ist als sich mit USB Treibern
> herumschlagen zu müssen. Es sei denn, du willst ein Eingabegerät
> basteln, dann bietet sich direktes USB an, da du dann den HID Treiber am
> PC verwenden kannst. Jedoch wirst du das am uC nicht hinbekommen, so
> ganz ohne Vorerfahrung.

Das hab ich schon verstanden

> Ein Gyroskop alleine braucht man selten. Ich weiß ja nicht was du machen
> willst, aber normalerweise verwendet man für die Standardsachen
> (Bewegung) Beschleunigungssensoren, für komplexe 3D Bewegungen dann
> gleich ein IMU, d.h. Beschleunigungssensor, Gyroskop, Magnetfeldsensor.
> Das wiederum wird dich auch komplett überfordern, also wenn du schon so
> hart direkt einsteigen willst, dann kannst du zwar eine Platine mit
> allen drei Bauteilen drauf dir besorgen, aber fange erst mit dem
> Beschleunigungssensor an.

Ein Beschleunigungssensor könnte sogar vielleicht auch funktionieren.

> Schau mal hier nach einem Board das deinen hohen Ansprüche genügt:
> http://www.mikroe.com/development-boards/


Wie ist das zu verstehen ?

von Fabian A. (kraugon)


Lesenswert?

Lothar

> https://www.olimex.com/Products/ARM/NXP/LPC-P1343/
> https://www.olimex.com/Products/Modules/Sensors/MOD-SMB380/

Ok danke für die Links werde mal drüber schauen. Obwohl mir der Sensor 
schon ein bisschen zu teuer ist. Ich brauch relativ "viele" und muss 
erstmal schauen ob das ganze auch so funktionier würde.

Ist der Beschleunigungssensor so das er auch genau angeben kann ob sich 
der Sensor schnell bewegt oder langsam.

von Frank M. (frank_m35)


Lesenswert?

Fabian Andrä schrieb:
> Wie ist das zu verstehen ?

Du hast noch nie davor etwas mit einem uC gemacht und versuchst dich 
gleich an sehr komplizierte Projekte. Dazu brauchst du auch ein Board 
mit einem uC und USB Anschluss etc. Der Link bietet eine große Auswahl, 
bzw. übersicht was man sich dafür so kaufen könnte.

Es wird klappen, da, wie du an Lothars Post siehst, vieles einfach schon 
fix und fertig zu haben ist und du fast nichts selbst machen musst, 
außer das Board kaufen, Sensor anschließen, uC beschreiben, fertig. Nur 
leider hast du dann nichts verstanden und kommst nicht weiter um etwas 
eigenes zu machen, da der Code bzw. das ganze Projekt zu komplex sein 
wird um daran etwas lernen zu können.
Wenn du einen anderen Sensor mal anschließen willst, bei dem eben kein 
Source Code mitgeliefert wird, dann wirst du scheitern, da du den 
dahinterliegenden Aufbau nicht verstanden hast.

Auch wissen wir nicht was du unter 'relativ viel Erfahrung mit C' 
verstehst.

Daher empfehle ich dir nochmal: Suche dir eine flotte Anleitung für den 
Einstieg in uC oder ein flott voranschreitendes Buch. Und dann musst du 
dich halt einen Tag mal mit LED blinken widmen um die 
Grundfunktionsweise eines uC verstanden zu haben. Dann kommen Timer und 
die Herangehensweise von Pausen und Programmabläufen bei uC. Dann kommen 
die Schnittstellen, wie SPI, I2C (eines davon verwendet ein digitaler 
Beschleunigungssensor) womit du erst in der Lage sein wirst, einen 
Treiber für den Beschleunigungssensor zu schreiben. Auch fehlt noch 
RS232 und vermutlich USB. Und dann kannst du dein Ding machen. Ansonsten 
wird es eine mühsame zeitraubende Rumstocherei im Dunkeln und am Ende 
hast du eine Menge Halbwissen, das dir nichts bringt.

von Roro (Gast)


Lesenswert?

Fabian Andrä schrieb:

> Ein Beschleunigungssensor könnte sogar vielleicht auch funktionieren.

Das verstehe ich nicht. Ich denke das ist genau das, was du ursprünglich 
vorhattest.

>> Schau mal hier nach einem Board das deinen hohen Ansprüche genügt:
>> http://www.mikroe.com/development-boards/
>
>
> Wie ist das zu verstehen ?

Das ist als gut gemeinter Tip zu verstehen. Oder wolltest du die 
komplette Elektronik wirklich selber zusammenbauen? Dann solltest du 
vielleicht doch mit einer blinkenden LED anfangen.

von Frank M. (frank_m35)


Lesenswert?

Fabian Andrä schrieb:
> Ist der Beschleunigungssensor so das er auch genau angeben kann ob sich
> der Sensor schnell bewegt oder langsam.

Wie schon gesagt, der Sensor gibt dir gar nicht an ob er sich bewegt, 
also kann er auch nicht angeben ob er sich schnell oder langsam bewegt. 
Er gibt dir nur an wie stark er Beschleunigt wird und das hängt vom 
Sensor ab wie genau/weit er auflösen kann.
Der von Lothar hat eine Auflösung von 10-Bit und deckt einen max. 
Bereich von +-8g ab.

von Fabian A. (kraugon)


Lesenswert?

Frank M. schrieb:
> Fabian Andrä schrieb:
>> Wie ist das zu verstehen ?
>
> Du hast noch nie davor etwas mit einem uC gemacht und versuchst dich
> gleich an sehr komplizierte Projekte. Dazu brauchst du auch ein Board
> mit einem uC und USB Anschluss etc. Der Link bietet eine große Auswahl,
> bzw. übersicht was man sich dafür so kaufen könnte.
>
> Es wird klappen, da, wie du an Lothars Post siehst, vieles einfach schon
> fix und fertig zu haben ist und du fast nichts selbst machen musst,
> außer das Board kaufen, Sensor anschließen, uC beschreiben, fertig. Nur
> leider hast du dann nichts verstanden und kommst nicht weiter um etwas
> eigenes zu machen, da der Code bzw. das ganze Projekt zu komplex sein
> wird um daran etwas lernen zu können.
> Wenn du einen anderen Sensor mal anschließen willst, bei dem eben kein
> Source Code mitgeliefert wird, dann wirst du scheitern, da du den
> dahinterliegenden Aufbau nicht verstanden hast.

Ja das weis ich deswegen möchte ich sowas auch ungern wo alles Fertig 
ist. Da mir ja eigentlich gerade das Zusammenbasteln und selber 
Programmieren Spaß macht.

> Auch wissen wir nicht was du unter 'relativ viel Erfahrung mit C'
> verstehst.
>
> Daher empfehle ich dir nochmal: Suche dir eine flotte Anleitung für den
> Einstieg in uC oder ein flott voranschreitendes Buch. Und dann musst du
> dich halt einen Tag mal mit LED blinken widmen um die
> Grundfunktionsweise eines uC verstanden zu haben. Dann kommen Timer und
> die Herangehensweise von Pausen und Programmabläufen bei uC...

Ok, kann mir einer ein gutes Einsteiger-Set empfehlen wo alles dabei ist 
oder ist was ich so brauch ?

von Fabian A. (kraugon)


Lesenswert?

Frank M. schrieb:
> Fabian Andrä schrieb:
>> Ist der Beschleunigungssensor so das er auch genau angeben kann ob sich
>> der Sensor schnell bewegt oder langsam.
>
> Wie schon gesagt, der Sensor gibt dir gar nicht an ob er sich bewegt,
> also kann er auch nicht angeben ob er sich schnell oder langsam bewegt.
> Er gibt dir nur an wie stark er Beschleunigt wird und das hängt vom
> Sensor ab wie genau/weit er auflösen kann.
> Der von Lothar hat eine Auflösung von 10-Bit und deckt einen max.
> Bereich von +-8g ab.

Ja das meint ich, danke.
Und da 3 Achsen also auch jeweils für die 3 Achsen ?

von Roro (Gast)


Lesenswert?

Fabian Andrä schrieb:
> Ok, kann mir einer ein gutes Einsteiger-Set empfehlen wo alles dabei ist
> oder ist was ich so brauch ?

Du bist auf jeden Fall auf dem richtigen Weg. :)

von Frank M. (frank_m35)


Lesenswert?

Fabian Andrä schrieb:
> Ok, kann mir einer ein gutes Einsteiger-Set empfehlen wo alles dabei ist
> oder ist was ich so brauch ?

Nun, das hängt davon ab was du jetzt machen willst und in Zukunft 
vorhast, von der größe deiner Projekte kannst du zwischen 32-bit, 
16-bit, 8-bit uC wählen.
Du musst dich auf einen uC festlegen, und kannst auswählen zwischen 
vielen :-D Bspw. AVR, PIC, ARM (und diese spalten sich wieder in viele 
Bereiche auf)

Ohne genaueren Angaben deinerseits wird's schwer eine Empfehlung 
auszusprechen, ebenso wie ambitioniert du es angehen willst und wieviel 
Geld du rein investieren willst und wie du die Projekte aufbauen willst 
(kannst du löten, Leiterplatten herstellen,...)

Ich komme vom PIC-Lager und würde dir 16-Bit PIC24 bzw. 32-Bit PIC32 
empfehlen, dazu das Buch http://flyingpic24.com/index.html, bzw. 
http://exploringpic32.com/ Erfordert aber zusätzliche Hardware um die 
Projekte nachprogrammieren zu können, d.h. kostet was.

Andere können dir sicherlich für ARM. AVR, ... Empfehlungen geben.

Fabian Andrä schrieb:
> Ja das meint ich, danke.
> Und da 3 Achsen also auch jeweils für die 3 Achsen ?
Ja genau, x,y,z
Das ist auch das was die Smartphones drin haben und zur 
Bewegungssteuerung von Spielen, bspw. Rennspielen, verwenden.

von Karl H. (kbuchegg)


Lesenswert?

Fabian Andrä schrieb:

> Ja das meint ich, danke.
> Und da 3 Achsen also auch jeweils für die 3 Achsen

Ich denke du missverstehst da schon wieder was.

Ein 3-achsen Beschleunigungssensor ist im Grunde nichts anderes als eine 
Kugel, die an einer Feder hängt. Der Sensor teilt dir mit, wo (in Bezug 
auf seine 3 lokalen Koordinaten-Achsen) zur Zeit gerade die Kugel ist.
Genau wie ein Pendel: Bewegst du das Pendel nach rechts, dann schlägt 
das Pendel nach links aus. Nur dass dir dieser Sensor nur sagen würde, 
wie weit er ausgeschlagen hat und der 3-Achs Sensor sagt dir, wie weit 
dieses 'Federpendel' nach links/rechts bzw. vorne/hinten ausgeschlagen 
hat und wie weit die 'Feder' gedehnt wurde.
Das sind deine Informationen mit denen du weiter arbeiten musst.

(Allerdings funktioniert das technisch anders, so dass man den Sensor 
auch auf den Kopf stellen kann und du kriegst immer noch gute Daten. 
Nimm also das Federpendel nicht zu wörtlich)

von Fabian A. (kraugon)


Lesenswert?

Frank M. schrieb:
> Ich komme vom PIC-Lager und würde dir 16-Bit PIC24 bzw. 32-Bit PIC32
> empfehlen, dazu das Buch http://flyingpic24.com/index.html, bzw.
> http://exploringpic32.com/ Erfordert aber zusätzliche Hardware um die
> Projekte nachprogrammieren zu können, d.h. kostet was.
>
> Andere können dir sicherlich für ARM. AVR, ... Empfehlungen geben.

Ok danke, dann würde ich wahrscheinlich eines der beiden nehmen. 
Wahrscheinlich 32-Bit PIC32

Was würde ich denn noch alles brauchen?

Ach ja Löten kann ich, allerdings Leiterplatten herstellen nicht.

von Wolfgang (Gast)


Lesenswert?

Fabian Andrä schrieb:
> Ist der Beschleunigungssensor so das er auch genau angeben kann ob sich
> der Sensor schnell bewegt oder langsam.

Da scheinen dir noch ein paar Grundlagen zu fehlen. Ein 
Beschleunigungssensor mißt die Beschleunigung und die ist unabhängig 
davon, wie schnell sich der Sensor bewegt, da sie das Maß für die 
Änderung der Geschwindigkeit ist.
http://de.wikipedia.org/wiki/Beschleunigung

von Lothar (Gast)


Lesenswert?

Fabian Andrä schrieb:
>> Es wird klappen, da, wie du an Lothars Post siehst, vieles einfach schon
>> fix und fertig zu haben ist und du fast nichts selbst machen musst,
>> außer das Board kaufen, Sensor anschließen, uC beschreiben, fertig. Nur
>> leider hast du dann nichts verstanden und kommst nicht weiter um etwas
>> eigenes zu machen, da der Code bzw. das ganze Projekt zu komplex sein
>> wird um daran etwas lernen zu können.
>> Wenn du einen anderen Sensor mal anschließen willst, bei dem eben kein
>> Source Code mitgeliefert wird, dann wirst du scheitern, da du den
>> dahinterliegenden Aufbau nicht verstanden hast.
>
> Ja das weis ich deswegen möchte ich sowas auch ungern wo alles Fertig
> ist. Da mir ja eigentlich gerade das Zusammenbasteln und selber
> Programmieren Spaß macht.

Ich finde es umgekehrt einfacher. Erst mal was nehmen, was funktioniert, 
und dann basteln. Bei diesem ARM Board ist der Schaltplan Open Source, 
d.h. Du kannst auch Deine eigene Platine machen, und dort ein 
Accelerometer Deiner wahl drauf machen. Der Accelerometer Code ist I2C 
und damit kannst Du mit minimalen Änderungen auch alle anderen I2C 
Sensoren anschliessen. Und natürlich kannst Du auch eine blinkende LED 
mit rein machen: FIO1PIN_bit.P1_0 ^= 1 :-)

> Wahrscheinlich 32-Bit PIC32

Insider-Joke: WARNING - Do not use "programmer-to-go" button when there 
is no image on the MICROCHIP PIC-KIT3 or that might put your 
microcontroller in an inrecoverable state.

von Frank M. (frank_m35)


Lesenswert?

Fabian Andrä schrieb:
> Frank M. schrieb:
>> Ich komme vom PIC-Lager und würde dir 16-Bit PIC24 bzw. 32-Bit PIC32
>> empfehlen, dazu das Buch http://flyingpic24.com/index.html, bzw.
>> http://exploringpic32.com/ Erfordert aber zusätzliche Hardware um die
>> Projekte nachprogrammieren zu können, d.h. kostet was.
>>
>> Andere können dir sicherlich für ARM. AVR, ... Empfehlungen geben.
>
> Ok danke, dann würde ich wahrscheinlich eines der beiden nehmen.
> Wahrscheinlich 32-Bit PIC32
>
> Was würde ich denn noch alles brauchen?
>
> Ach ja Löten kann ich, allerdings Leiterplatten herstellen nicht.

Schau dich einfach auf der Seite zum Buch um, dort empfiehlt er 
Hardware.

Was ich mit dem Löten meinte, war, dass wenn du bspw. einen PIC32 nimmst 
(oder andere leistungsfähige 16-32-Bit uC), du diese fast nur in QFP 
Packages bekommst, d.h. wenn du selbst dir eine Leiterplatte bauen 
willst, du dann SMD löten musst und eben eine echte Leiterplatte ätzen 
bzw. herstellen lassen.
Bei kleineren, bspw. 8-Bit uC findest du viele im DIL Gehäuse, kannst 
sie auf dem Steckbrett aufbauen oder von Hand auf einer 
Lochrasterplatine löten. Dafür sind sie eben nur noch 8-Bit und haben 
dementsprechend meist kleinere Speicher und sind langsamer.

von Lothar (Gast)


Lesenswert?


von Frank M. (frank_m35)


Lesenswert?

Lothar schrieb:
> Ich finde es umgekehrt einfacher. Erst mal was nehmen, was funktioniert,
> und dann basteln. Bei diesem ARM Board ist der Schaltplan Open Source,
> d.h. Du kannst auch Deine eigene Platine machen, und dort ein
> Accelerometer Deiner wahl drauf machen. Der Accelerometer Code ist I2C
> und damit kannst Du mit minimalen Änderungen auch alle anderen I2C
> Sensoren anschliessen. Und natürlich kannst Du auch eine blinkende LED
> mit rein machen: FIO1PIN_bit.P1_0 ^= 1 :-)

Ich stimme dir zu, aber nur wenn es die Differenz von bekanntem und 
neuen nicht zu groß ist.
Hat man mal ein Grundwissen vorhanden, so kann man sich das neue 
unbekannte aus Beispielen und funktionierendem Code aneignen.
Aber in seinem Fall ist das Grundwissen über uC nicht vorhanden, und 
somit denke ich wird einfach der Blick für's Wesentliche fehlen.
Schon allein wenn man sich hier viele Threads zum Thema I2C ansieht. Die 
meisten die hier fragen stellen haben den Bus, das Protokoll, einfach 
nicht verstanden, wissen nicht worauf es im Datenblatt ankommt oder wie 
man so ein Datenblatt überhaupt liest, und wenn er eben noch nie mit uC 
vorher etwas gemacht hat, wird es ihm sicherlich änlich gehen.
Das selbe mit Timer und der generellen Struktur von Programmen für uC.

von Frank M. (frank_m35)


Lesenswert?

Lothar schrieb:
> Frank M. schrieb:
>> fast nur in QFP Packages
>
> ARM LPC810 als DIP-8 :-)
>
> 
http://de.mouser.com/ProductDetail/NXP-Semiconductors/LPC810M021FN8FP/?qs=sGAEpiMZZMtmz9NzafXQyhIvAjwTEyrk

Zum Glück habe ich 'fast' noch dazugeschrieben ^^
Und jetzt bitte noch mit nativem USB (da er vermutlich ein HID 
kompatibles Gerät bauen will) und dann wird's schwer.

von Lothar (Gast)


Lesenswert?

Frank M. schrieb:
> Und jetzt bitte noch mit nativem USB (da er vermutlich ein HID
> kompatibles Gerät bauen will) und dann wird's schwer.

Das stimmt natürlich. Dann bliebe nur noch ein DIP-Modul (mit schlechtem 
Preis/Leistungsverhältnis):

http://www.watterott.com/de/LPC1343-QuickStart-Board

von samandiriel (Gast)


Lesenswert?

wie oben schon geschrieben: wenn du einen schnellen Erfolg willst, 
nimmst Du einen Arduino (Klone). billig, top dokumentiert, usb 
schnittstelle dabei, schneller Erfolg sicher. Für Bastler und Anfänger 
immer noch eine der besten Möglichkeiten. Ich habe damit in ca. einer 
Stunde erfolgreich meinen drei Achs beschleunigungssensor ausgelesen. 
Für 45€ inkl. Sensor und Versand.

von Pappnase (Gast)


Lesenswert?

>wenn du einen schnellen Erfolg willst, nimmst Du einen Arduino
Paperlapap.
Der günstigste Weg ist ein STM32F3Discovery kit. Hat alles was der 
Threadersteller sich wünscht onboard und das für deutlich weniger als 20 
Euro. Freie Software dazu ist auch vorhanden.
Will sehen, ob das jemand preislich toppen kann, hehe.

http://www.st.com/web/en/catalog/tools/FM116/SC959/SS1532/PF254044

von Lothar (Gast)


Lesenswert?

Pappnase schrieb:
> Der günstigste Weg ist ein STM32F3Discovery kit

Hat keinen ROM USB Stack d.h. STM Library Durchblick nötig. Hat USB HID 
schon mal damit funktioniert?

Empfehlung vom Anfang: LPC-P1343+SMB380 : 13+15=28 EUR

Der Aufpreis dürfte sich lohnen. Zudem könnte STM bald pleite sein :-)

http://www.reuters.com/article/2013/04/22/stmicroelectronics-results-idUSL3N0D93PW20130422

von Frank M. (frank_m35)


Lesenswert?

Pappnase schrieb:
>>wenn du einen schnellen Erfolg willst, nimmst Du einen Arduino
> Paperlapap.
> Der günstigste Weg ist ein STM32F3Discovery kit. Hat alles was der
> Threadersteller sich wünscht onboard und das für deutlich weniger als 20
> Euro. Freie Software dazu ist auch vorhanden.
> Will sehen, ob das jemand preislich toppen kann, hehe.
>
> http://www.st.com/web/en/catalog/tools/FM116/SC959/SS1532/PF254044

Preislich gesehen hast du recht, nur wäre es nett wenn du ihm dann auch 
noch eine Quelle zum Einstieg geben würdest, sodass er die Platform 
schnell lernen kann, ohne sehr viel Vorwissen in uC haben zu müssen 
(d.h. Datenblätter zählen nicht ^^), denn was bringt das beste Board 
wenn man es nicht benutzen kann.
Das wäre bei Arduino ja gegeben gewesen, auf was samandiriel anspielte.

von Fabian A. (kraugon)


Lesenswert?

Danke für die extrem vielen Vorschläge. Ich werde mir alles einmal 
ansehen.
Der Sensor sollte nicht integriert sein da ich wie schon erwähnt mehrere 
Sensoren auslesen muss und die sollen auch unabhängig sein.

von Wolfgang (Gast)


Lesenswert?

Fabian Andrä schrieb:
> Der Sensor sollte nicht integriert sein da ich wie schon erwähnt mehrere
> Sensoren auslesen muss

Wozu wurden Bus-Systeme wie I2C oder SPI erfunden, die den Anschluss 
weiterer Sensoren erlauben. Eins schließt das andere nicht aus.

von roman (Gast)


Lesenswert?

Hm, also ich würde auch ein Arduino empfehlen. Damit habe ich schon 
leute projekte zusammenklopfen sehen die absolut gar keine Erfahrung 
haben (hatten). Es gibt gerade für einen oder mehrere 
Beschleunigungssensoren sehr viele Beispiele, die Hardware gibts auf 
eBay um die 10-15€ rum (zzgl. Sensor für 5-8). Zusammen mit "Processing" 
kann man dann am Rechner quick-and-dirty auch ein Programm 
zusammenklopfen dass die Daten ausliest.
Keine Ahnung aber wer eigentlich gar kein Bock hat sich in den "Details" 
zu verlieren ist doch damit prima beraten. Und für den Preis macht man 
schließlich nix kaputt wenn man das Interesse doch vorzeitig verliert 
....
Auch wenn sich da in mir alles sträubt ...

Good luck!

von Arc N. (arc)


Lesenswert?

Lothar schrieb:
> Hier werden mal wieder viel zu komplizierte Lösungen propagiert. Die
> einfachste Lösung ist USB HID und ein MC der einen USB Stack im ROM hat.

Es ginge u.U. deutlich einfacher
SiLabs CP2112 USB-HID -> I²C
http://www.silabs.com/products/interface/usbtouart/Pages/HID-USB-to-SMBus-Bridge.aspx

32-Bit Controller im DIP-Gehäuse z.B.:
PIC32MX250F128B, 28-DIP

Je nach dem was das ganze werden soll, wäre u.U. auch ein USB-AD-Wandler 
mit genügend Eingängen und analogen Sensoren eine Option.

von Fabian A. (kraugon)


Lesenswert?

Ich hab jetzt mal geschaut und für mein Projekt wird ein 
Beschleunigungssensor nicht reichen. Was für mein Projekt in frage käme 
wäre dann wohl ein Gyroskop.

Ich möchte nämlich etwas ähnliches wie hier in dem Video machen:
https://www.youtube.com/watch?v=wHadB1EL36I

Mit einen Beschleunigungssensor wäre das allerdings nicht Möglich.

> Wolfgang (Gast) schrieb:
> Wozu wurden Bus-Systeme wie I2C oder SPI erfunden, die den Anschluss
> weiterer Sensoren erlauben. Eins schließt das andere nicht aus.

Ja aber trotzdem brauch ich keinen auf der Hauptplatte.

von Roro (Gast)


Lesenswert?

Also wenn es nur um die Neigung geht, das ginge (quick and dirty) auch 
mit Beschleunigungssensoren, in diesem Fall zwei, bzw. einem 
zwei-achsigen.

von Wolfgang (Gast)


Lesenswert?

Fabian Andrä schrieb:
> Mit einen Beschleunigungssensor wäre das allerdings nicht Möglich.

Der Beschleunigungssensor weiß sehr genau, wo unten ist, solange du dich 
nicht schwerelos im Weltraum befindest, sondern das Gravitationsfeld der 
Erde im die Richtung diktiert. Mit einem Gyro tritt das Problem auf, 
dass die Lageinformation wegdriftet. Da braucht man dann noch 
zusätzliche Sensoren, um das zu verhindern.

von Frank M. (frank_m35)


Lesenswert?

Wolfgang schrieb:
> Fabian Andrä schrieb:
>> Mit einen Beschleunigungssensor wäre das allerdings nicht Möglich.
>
> Der Beschleunigungssensor weiß sehr genau, wo unten ist, solange du dich
> nicht schwerelos im Weltraum befindest, sondern das Gravitationsfeld der
> Erde im die Richtung diktiert. Mit einem Gyro tritt das Problem auf,
> dass die Lageinformation wegdriftet. Da braucht man dann noch
> zusätzliche Sensoren, um das zu verhindern.

Wenn der Vektor der Winkelgeschwindigkeit orthogonal zur Erdoberfläche 
steht, so kann der Beschleunigungsensor die Rotation nicht erkennen, und 
genau das will er aber können.

Aber wie du schon sagtest, den Drift muss er irgendwie raus bekommen.

Auf jeden Fall will er eigentlich eine IMU bauen, wozu er dann aber 
gleich mehrere IMU braucht, das bleibt ein Rätsel. Und ob er wirklich uC 
programmieren lernen will oder nur sowas nachbasteln, dabei bin ich mir 
ebenso noch nicht so ganz sicher.

PS:vllt. löst das ja dein Problem schon: 
https://play.google.com/store/apps/details?id=org.zwiener.wimu&hl=en

von Wolfgang (Gast)


Lesenswert?

Frank M. schrieb:
> Wenn der Vektor der Winkelgeschwindigkeit orthogonal zur Erdoberfläche
> steht, so kann der Beschleunigungsensor die Rotation nicht erkennen, und
> genau das will er aber können.

Da hast du natürlich Recht. Einen Kompaßsensor könnte man noch nehmen, 
um einen zweiten Winkel für die Lagebestimmung zu haben.

von Roro (Gast)


Lesenswert?

Frank M. schrieb:
> Wenn der Vektor der Winkelgeschwindigkeit orthogonal zur Erdoberfläche
> steht, so kann der Beschleunigungsensor die Rotation nicht erkennen, und
> genau das will er aber können.

Bist du dir da sicher? Vielleicht braucht er ja gerade das nicht. Dann 
reicht wie gesagt ein 2-Achsen-Beschleunigungssensor. Ich persönlich 
poche ab jetzt eh auf die blinkende LED. Die muss es schon sein. ;-)

von Christian H. (christian_h)


Lesenswert?

Du sagst, dass du das Interesse verlierst, wenn du eine LED zum Blinken 
bringen willst (man kann ja auch andere einfache Dinge tun), aber 
möchtest dich selber an ein Riesenprojekt setzen? So leicht du dir das 
auch vorstellst, aber ich habe selber die letzten Wochen an einem 
IMU-Projekt gearbeitet mit Gyroskop und Beschleunigungssensor und ich 
sag dir, auch wenn du es VOR dem Projekt anders siehst: Da wirst du als 
Anfänger die Lust verlieren.

Es ist nunmal einfach zu komplex, wenn man noch nie in Berührung 
gekommen ist mit µCs. Es ist so, als würde ein Modellflugzeug-Pilot eine 
Passagiermaschine fliegen sollen, es ist so, als würde HTML-Anfänger 
Facebook kopieren wollen, es ist so, als würde ein 1. Klässler Fermats 
Satz beweisen wollen (vielleicht übertrieben).

Jedenfalls solltest du vielleicht erstmal damit anfangen, wenigsten ne 
halbe Stunde, eine LED zum blinken zu bekommen. Direkt danach schaust du 
dir an, wie Timer funktionieren, denn die wirst du brauchen, wenn du 
vielleicht ein Komplementärfilter einsetzen willst. Ebenfalls solltest 
du dir dann UART anschauen und ganz besonders nicht nur vom µC->PC 
sondern auch am PC ein Programm schreiben können, was über den COM-Port 
zum µC senden kann. Dann musst du dir dringend I2C anschauen, oder SPI 
um die Sensoren auslesen zu können (das sind Buse). Dann musst du ne 
Menge Nachdenken und die Daten filtern (ebenfalls eine nicht allzu 
schöne Angelegenheit, google mal).
Die Daten musst du dann sauber zu deinem PC-Programm bekommen, wo du 
dich dann mit GUI und 3D-Programmierung beschäftigen musst, was 
ebenfalls schon ein breites und komplexes Feld für sich ist.
Zu den Sensoren schau dringend auch hier nach: 
http://www.starlino.com/imu_guide.html

Ich möchte dich nicht entmutigen, denn ich weiß gut, was du damit 
meinst, dass du an Mammut-Projekten lernst, aber das Mammut ist ne 
Nummer zu groß, such dir vorest ein kleineres.

Gruß,
Christian

von Heiko J. (heiko_j)


Lesenswert?

Fabian Andrä schrieb:
> Ich respektiere das, es ist klar das jeder einem am Anfang rät "Fang
> erstmal bei den Grundlagen an". Ist ja auch nur nett gemeint! Nur leider
> bin ich so ein Mensch der dann schnell wieder das Interesse Verliert.
> Vor allem wenn ich wie jetzt eine tolle Idee hab die ich so gern
> umsetzten möchte.

1.) Du wirst um die blinkenden LEDs nicht herum kommen, wenn das Zeug 
nicht mit Frust in der Bastelkiste enden soll. Sonst fehlt schnell das 
Erfolgserlebnis um die Sache am laufen zu halten.

2.) Wirst Du die LEDs auf dem Entwicklerboard, welches Du verwenden 
wirst, lieben um "mal schnell" was zu Debuggen.

3.) Mach dir einen genauen Plan, was Du eigentlich wirklich willst. 
Einfach nur Daten von einem Sensor per I2C einlesen und auf USB ausgeben 
...
- Willst Du die Daten vom PC Pollen und der µC soll nur als Bridge zum 
I2C fungieren ?
- Oder soll der µC die Daten mit der maximal möglichen Geschwindigkeit 
vom Sensor holen und über USB an den PC streamen ?
- Oder soll der µC die Daten mit der maximal möglichen Geschwindigkeit 
vom Sensor holen, puffern und der PC pollt die mittlerweile im µC 
aufgelaufenen Daten ?

Fragen über Fragen ...

Deshalb:
1.) Erstmal die Anforderungen aufschreiben was das Ding machen soll
2.) Überlegen wie das ganze grob ablaufen soll.
3.) Die Datenblätter der in Frage kommenden Komponenten sichten
4.) Ein Konzept schreiben welche Komponenten Du verwenden willst und wie 
diese agieren sollen.
5.) Mit den einfachen Dingen anfangen. GPIO (LEDs blinken lassen), USART 
(RS232).
6.) Dann erst I2C und USB. I2C und USB kann je nach µC aufwändig, 
kompliziert und frustrierend sein. Manchmal auch alles zusammen.

Bei einigen µC ist es oft einfacher I2C erstmal per Bit banging zu 
machen um die prinzipielle Funktionalität zu testen bevor man sich den 
Wahnsinn mit der I2C-HW des µC gibt. Für I2C ist ein Oszilloskop oder 
Logicanalyzer nicht unbedingt notwendig, aber sehr sehr hilfreich.

Kleiner Tip für den schmalen Geldbeutel und Leute mit VIEL Zeit: Ohne 
Oszi & Co kannst Du Dir aber auch das Signal wieder in den µC 
zurückschleifen und deinen µC gleichzeitig als Logicanalyzer verwenden. 
Über einen GPIO für SDA und einen externen Interrupt für SCL die Daten 
am µC direkt wieder einlesen. Das geht im Normalfall aber nur wenn du 
den I2C mit geringer Geschwindigkeit laufen lässt. Dazu ggf. noch ein 
Timer um SDA/SCL auszulesen falls der Trigger über den Interrupt vom SCL 
nicht kommt.

Viel Spaß beim Basteln

von Fabian A. (kraugon)


Lesenswert?

Frank M. schrieb:
> Aber wie du schon sagtest, den Drift muss er irgendwie raus bekommen.

Mit einer Mischung aus Gyroskop und Accelerator sollte das doch möglich 
sein oder?

> Auf jeden Fall will er eigentlich eine IMU bauen, wozu er dann aber
> gleich mehrere IMU braucht, das bleibt ein Rätsel.

Das ich mehrer brauch hat seinen Grund. Ich will nicht genauer drauf 
eingehen aber Sie können sich sicher sein das alles seine Richtigkeit 
hat.

> Und ob er wirklich uC programmieren lernen will
> oder nur sowas nachbasteln, dabei bin ich mir
> ebenso noch nicht so ganz sicher.
>
> PS:vllt. löst das ja dein Problem schon:
> https://play.google.com/store/apps/details?id=org.zwiener.wimu&hl=en

Also ich möchte gerne mit µC Anfangen.
Etwas nachbasteln wäre Sinnlos da das was ich machen will gar nicht so 
existiert. Ich hab mich auch schon immer für µC Interessiert, doch 
wollte erstmal vieles in C machen, auch da mir das Geld für die 
Materialien und die Idee gefehlt haben. Allgemein interessiere ich mich 
sehr für Technik.

Bin euch sehr dankbar das ihr alle versuchen mir zu helfen.

von Fabian A. (kraugon)


Lesenswert?

Heiko Jakob schrieb:
> Fabian Andrä schrieb:
>> Ich respektiere das, es ist klar das jeder einem am Anfang rät "Fang
>> erstmal bei den Grundlagen an". Ist ja auch nur nett gemeint! Nur leider
>> bin ich so ein Mensch der dann schnell wieder das Interesse Verliert.
>> Vor allem wenn ich wie jetzt eine tolle Idee hab die ich so gern
>> umsetzten möchte.
>
> 1.) Du wirst um die blinkenden LEDs nicht herum kommen, wenn das Zeug
> nicht mit Frust in der Bastelkiste enden soll. Sonst fehlt schnell das
> Erfolgserlebnis um die Sache am laufen zu halten.
>
> 2.) Wirst Du die LEDs auf dem Entwicklerboard, welches Du verwenden
> wirst, lieben um "mal schnell" was zu Debuggen.
>
> 3.) Mach dir einen genauen Plan, was Du eigentlich wirklich willst.
> Einfach nur Daten von einem Sensor per I2C einlesen und auf USB ausgeben
> ...

Nett gemeint nur leider ist es wie gesagt das ich damit nichts anfangen 
kann.
Ich finde heutzutage kann man sich im Internet so informieren das man 
diese Steps z.B. auch durch Youtube machen kann. Ist jetzt meine Ansicht

Jup schrieb:
> Hallo Leute
> Der Kindergarten heutzutage macht das locker in 2 Tagen!
>
> Die brauchen keine Basics.
>
> Jupp

Wissen Sie auf sowas kann ich gerne verzichten. Ihr Beitrag hat nun so 
viel gebracht (so viel zum Kindergarten).
Ich werde mich schon anderweitig über diese Anfänger Sachen informieren.
Ich bin kein dummer Mensch. Ich hab auch ein sehr gutes technisches 
Verständnis und wenn ICH eine Idee hab die mich so fesselt dann kann man 
auch davon ausgehen das die nicht frustriert in der Schublade landet. 
Ehe das passiert werde ich mich euren Rat beugen und mit den Anfänger 
Grundlagen beginnen. Aber ich werde es ja sehen.

Ich bin euch auf jeden Fall sehr dankbar was ich bis jetzt an 
Information bekommen hab das hat mir alles schon sehr geholfen.

( Entschuldigung für den doppelten Beitrag ich weis viele Foren sehen 
das nicht gern. Ich kam leider den ganzen Tag nicht dazu und hab nun 
einige Beiträge bekommen die ich gerne getrennt beantwortet haben 
wollte. Ich hoffe das ist zu Entschuldigen. )

Edit:
Ich kann wie gesagt mich ein bisschen damit befassen. Also mit der LED 
usw.
Ich weis es wird schwer aber gerade diese Herausforderung reiz mich auch 
so extrem.

Wenn ich mit den LED anfangen soll kann mir ja jemand z.B. ein Anfänger 
Kit empfehlen wo alles dabei ist LEDs und Mikrocontroller usw. dann 
könnte ich mich vielleicht auch gern dazu nötigen. Aber danach möchte 
ich eigentlich direkt zu MEINEN Projekt übergehen.

von Christian H. (christian_h)


Lesenswert?

Ich kann dir leider kein Anfängerkit nennen (vielleicht Arduino Uno), 
aber das hier ist keine heldenhafte Sache, wie "ich beiß mich fest, 
egal, was die anderen sagen" und nachher schafft man es allen Trotz 
auch. Das findet man so vielleicht in guten Geschichten, aber der Kram, 
den du hier vor dir hast, ist einfach harte bittere Realität, wo dir 
nicht ohne Grund JEDER dazu raten wird, es nicht so zu machen, wie du es 
vorhast, sondern langsam Schritt für Schritt anzufangen. Ich verstehe 
nicht, warum du das ignorierst. Ich würde ein Wette abschließen, dass du 
an diesem Projekt dir ohne Kenntnisse die Zähne ausbeißen wirst und 
spätestens nach 5 Tagen "Wieso geht das nicht?!" wars das (und glaub 
mir, das ist noch ein kurzer Zeitraum).

Mach es doch lieber nach und nach, dann wirst du auch früher oder später 
genug Wissen haben die Aufgabe zu lösen und DANN wird auch jeder bereit 
sein, dir dabei zu helfen, wenn was nicht klappt.

Gruß,
Christian

von Heiko J. (heiko_j)


Lesenswert?

Fabian Andrä schrieb:
> Nett gemeint nur leider ist es wie gesagt das ich damit nichts anfangen
> kann.
> Ich finde heutzutage kann man sich im Internet so informieren das man
> diese Steps z.B. auch durch Youtube machen kann. Ist jetzt meine Ansicht

Lernen viel Du noch musst junger Padawan.
Google based Engineering mit Ctrl-C und Ctrl-V geht bei JavaScript und 
WebSeiten basteln, aber nicht bei hardwarenaher Entwicklung wo alles 
speziell auf deine HW zugeschneidert werden muss.

In Deinem Fall heißt das wohl: "Lernen durch Schmerz"
Halt uns auf dem Laufenden was die Erfolgsstory so macht. Ich bin 
gespannt ob's was wird.

von Heiko J. (heiko_j)


Lesenswert?

Fabian Andrä schrieb:

> Edit:
> Ich kann wie gesagt mich ein bisschen damit befassen. Also mit der LED
> usw.

Gut, Du lernst schnell das die LED dein Freund ist.

> Ich weis es wird schwer aber gerade diese Herausforderung reiz mich auch
> so extrem.

Widerstehe der dunklen Seite der Macht :-)

> Wenn ich mit den LED anfangen soll kann mir ja jemand z.B. ein Anfänger
> Kit empfehlen wo alles dabei ist LEDs und Mikrocontroller usw. dann
> könnte ich mich vielleicht auch gern dazu nötigen. Aber danach möchte
> ich eigentlich direkt zu MEINEN Projekt übergehen.

Auf jedem 0815 Board wirst Du eine LED haben.
Nimm am einfachsten ein STM32F3DISCOVERY. Da ist ein 3-Achsen 
Beschleunigungssensor, ein 3-Achsen Magnetometer und eine Hand voll LEDs 
schon mal drauf. An den I2C Bus kannst Du dein anderes Spielzeug 
Gyroskop & Co dann auch extern anschließen.

von Heiko J. (heiko_j)


Lesenswert?

Heiko Jakob schrieb:
> Nimm am einfachsten ein STM32F3DISCOVERY. Da ist ein 3-Achsen
> Beschleunigungssensor, ein 3-Achsen Magnetometer und eine Hand voll LEDs
> schon mal drauf. An den I2C Bus kannst Du dein anderes Spielzeug
> Gyroskop & Co dann auch extern anschließen.
Update:
Da ist sogar schon ein 3-Achsen Gyroskop mit drauf, also eine Komplette 
IMU.
Also sollte mit dem Board erstmal alles abgedeckt sein was Du brauchst. 
Wie schon gesagt, das weitere externe Spielzeug kannst Du dann relativ 
einfach anbinden.

von Wolfgang (Gast)


Lesenswert?

Fabian Andrä schrieb:
> Mit einer Mischung aus Gyroskop und Accelerator sollte das doch möglich
> sein oder?

Nein, wie Frank richtig bemerkt, brauchst man einen Parameter mehr als 
Referenz für die Orientierung.

Frank M. schrieb:
> Wenn der Vektor der Winkelgeschwindigkeit orthogonal zur Erdoberfläche
> steht, so kann der Beschleunigungsensor die Rotation nicht erkennen...

Der Schwerefeldvektor alleine reicht nicht aus. Stell dir einfach vor, 
dein Sensor liegt flach auf dem Tisch, so dass die Schwerkraft in 
z-Richtung deines Sensors wirkt. Eine Rotationen um die z-Achse kann ein 
Beschleunigungssensor dann nicht erkennen bzw. der Gyro kann frei in 
dieser Achse driften, ohne dass dies durch Sensor-Data-Fusion verhindert 
werden kann.

von kukuk (Gast)


Lesenswert?

Ich weis es wird schwer aber gerade diese Herausforderung reiz mich auch
so extrem

Extremer Reiz ? MC ist nix fuer Extremisten ;-)

von Simon K. (simon) Benutzerseite


Lesenswert?

Fabian Andrä schrieb:
> Nett gemeint nur leider ist es wie gesagt das ich damit nichts anfangen
> kann.
> Ich finde heutzutage kann man sich im Internet so informieren das man
> diese Steps z.B. auch durch Youtube machen kann. Ist jetzt meine Ansicht

Siehst du, daran sieht man beispielsweise, dass du überhaupt noch keinen 
blassen Schimmer hast, was du da vor hast.

Sowas kann man nicht per Youtube lernen. Sowas kann man nur durch 
Learning by Doing lernen. Besser wird man nur durch Erfahrung und nicht 
durch Videos gucken.

von Frank M. (frank_m35)


Lesenswert?

Fabian Andrä schrieb:
> Das ich mehrer brauch hat seinen Grund. Ich will nicht genauer drauf
> eingehen aber Sie können sich sicher sein das alles seine Richtigkeit
> hat.
Dann beachte aber auch, dass es zu einem Adress-Konflikt kommen wird. 
Ein I2C Gerät hat eine feste Adresse, von der du meist nur ein Bit 
ändern kannst. D.h. oft kannst du max. zwei dieser Bauteile an einen Bus 
ohne größere Probleme betreiben. Ansonsten musst du mehrere Busse? ^^ 
verwenden oder andere Tricksereien machen. Je nachdem was du vorhast ist 
es vielleicht auch das einfachste solche fertige STMDiscovery boards zu 
verwenden (sind ja total billig) und dann eben alle einzeln an den PC 
senden lassen wobei die vermischung am PC dann stattfindet für was auch 
immer.

Fabian Andrä schrieb:
> Ich finde heutzutage kann man sich im Internet so informieren das man
> diese Steps z.B. auch durch Youtube machen kann. Ist jetzt meine Ansicht
Da hast du leider nur teilweise recht. Genauso wie man mit 
Wikipedia-Artikeln ziemlich weit kommen kann, will man etwas aber 
wirklich verstanden haben, so führt nichts an speziellerer Literatur 
bzw. Webseiten vorbei die eben weiter ausholen.
Genauso sind eben solche Youtube-Videos oder Kurzanleitungen, reduziert 
auf das nötigste, meist ausreichend um die Schritte daheim nachzumachen, 
vom Verständnis aber keine Spur da nicht erklärt wird woher die 
Werte/Daten kommen und was sie genauer bedeuten etc.

Für PIC24 uC kann ich dir noch diese Seite empfehlen:
http://www.engscope.com/pic24-tutorial/
Dort solltest du das nötigste von Anfang bis Ende recht flott und 
kompakt lernen können, was du dann auch später benötigst. Wenn du das 
Inhaltsverzeichnis anschaust, so wird alles erwähnt was du vorerst 
wissen musst.
Es geht nicht so in's Detail der zugrundeliegenden uC Architektur wie 
die Bücher die ich erwähnte, aber erklärt sehr gut was wie gemacht wird 
und funktioniert.

Für ARM (bspw. das STM32F3Discovery board) kann ich leider nichts sagen, 
da ich selbst mich noch nie damit beschätftigt habe.

von .... (Gast)


Lesenswert?

Ich werfe mal den Arduino Leonardo in den Raum 
http://arduino.cc/de/Main/ArduinoBoardLeonardo
natives USB, fertige Libraries, Dokumentation ohne Ende ;)

von Heiko J. (heiko_j)


Lesenswert?

Frank M. schrieb:
> Dann beachte aber auch, dass es zu einem Adress-Konflikt kommen wird.
> Ein I2C Gerät hat eine feste Adresse, von der du meist nur ein Bit
> ändern kannst. D.h. oft kannst du max. zwei dieser Bauteile an einen Bus
> ohne größere Probleme betreiben. Ansonsten musst du mehrere Busse? ^^
> verwenden oder andere Tricksereien machen. Je nachdem was du vorhast ist
> es vielleicht auch das einfachste solche fertige STMDiscovery boards zu
> verwenden (sind ja total billig) und dann eben alle einzeln an den PC
> senden lassen wobei die vermischung am PC dann stattfindet für was auch
> immer.

Der hat bestimmt schon auf YouTube gesehen das er dazu über GPIO 
chip_select braucht und wird daher nur sensorchipse/breakouts nehmen die 
chips_sel haben/raus führen. :-)

von Fabian A. (kraugon)


Lesenswert?

Heiko Jakob schrieb:
> Auf jedem 0815 Board wirst Du eine LED haben.
> Nimm am einfachsten ein STM32F3DISCOVERY. Da ist ein 3-Achsen
> Beschleunigungssensor, ein 3-Achsen Magnetometer und eine Hand voll LEDs
> schon mal drauf. An den I2C Bus kannst Du dein anderes Spielzeug
> Gyroskop & Co dann auch extern anschließen.

Ok dann werde ich mir das STM32F3DISCOVERY mal zu üben und lernen 
zulegen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.