Spannung Messen -> Daten per USB ausgeben

Hallo,

ich habe einen Linux Computer und würde gerne die Spannung von 2 Sensoren messen. Als Eingang habe ich nur USB-Ports.

Die Spannung beträgt maximal 3V, also kann ich diese ja direkt an einen Arduino anschließen, oder? Kann ich hierzu den Nano benutzen? Benötige ich da auch noch einen richtigen Arduino oder würde z.B. dieser hier genügen?

http://www.ebay.de/itm/Nano-V3-0-ATmega328P-Board-Arduino-kompatibel-USB-CH340G-/201494369393

Ich bin leider ein totaler Anfänger...

Weiter geht es dann mit dem Auslesen der Spannung und dem Weiterleiten per USB an den Rechner.. Kann man das relativ einfach programmieren?

Danke für eure Hilfe!

Fabio

modsfabio: ich habe einen Linux Computer und würde gerne die Spannung von 2 Sensoren messen. Als Eingang habe ich nur USB-Ports.

Die Spannung beträgt maximal 3V, also kann ich diese ja direkt an einen Arduino anschließen, oder? Kann ich hierzu den Nano benutzen? Benötige ich da auch noch einen richtigen Arduino oder würde z.B. dieser hier genügen?

Willkommen im Forum.

Was sind das für Sensoren? Wenn die eine Spannung von max. 3 Volt liefern, sollte das funktionieren.

http://www.ebay.de/itm/Nano-V3-0-ATmega328P-Board-Arduino-kompatibel-USB-CH340G-/201494369393

Damit funktioniert es auch schon. Das ist ein Arduino-Clone. Du benötigst allerdings noch ein paar weitere Dinge, wie z.B. Steckbrett, Kabel, evtl. div. Kleinteile.

Ich bin leider ein totaler Anfänger...

Weiter geht es dann mit dem Auslesen der Spannung und dem Weiterleiten per USB an den Rechner.. Kann man das relativ einfach programmieren?

Das geht relativ einfach, hängt aber von deinen Programmierfähigkeiten ab.

Programmieren musst du, wir helfen dir. Und ja, die gemessene Spannung kann man über USB auf den Rechner schicken.

HotSystems:
Willkommen im Forum.

Vielen Dank :wink:

HotSystems:
Was sind das für Sensoren?
Wenn die eine Spannung von max. 3 Volt liefern, sollte das funktionieren.

Sonnen- und Windwächter. Ich hab das durchgemessen und bei starker Sonne bzw. starkem Wind waren es fast 2V, also ich denke viel höher wird das nicht gehen.

HotSystems:
Damit funktioniert es auch schon. Das ist ein Arduino-Clone.
Du benötigst allerdings noch ein paar weitere Dinge, wie z.B. Steckbrett, Kabel, evtl. div. Kleinteile.

Gut, ich habe mir das mal bestellt. 5 Euro sind es wohl wert … :slight_smile:
An Kabeln benötig ich wahrscheinlich nur das USB-Kable. Jumper-kabel habe ich noch…

HotSystems:
Das geht relativ einfach, hängt aber von deinen Programmierfähigkeiten ab.

Programmieren musst du, wir helfen dir.
Und ja, die gemessene Spannung kann man über USB auf den Rechner schicken.

Meine programmier-Künste sind relativ gut… Habe nur noch keine Erfahrung mit Arduino gemacht.
Aber habe mir das etwa so vorgestellt:

Auf dem Nano:

[sourcecode language=”cpp”]
void setup()
{
  Serial.begin(9600);
}

void loop()
{
  int sensorValueSun   = analogRead(A0);
  int sensorValueWind  = analogRead(A1);

  Serial.println(sensorValueSun + ";" + sensorValueWind)

  delay(1000);
}
[/sourcecode]

und auf einem PI / Linux PC:

cat /dev/ttyACM0

dann müsste ich ja schon etwas sehen können…

Oder habe ich hier etwas falsch verstanden?

Dann programmierst du nicht mit der IDE? Bei einem PI muss ich leider passen, da keine Erfahrung.

Per IDE kannst du über USB die Daten anzeigen. Wie es dann mit dem PI funktioniert, müssen andere schreiben.

Ich dachte die IDE dient nur dazu, den code auf den Nano zu bringen?...

Der code sollte ja jede sekunde erwas ausgeben per USB.

Mit dem commando 'cat' kann man an einer Schnittstelle lauschen, in diesem fall der USB port am PI.

Dann sollte da ja was ankommen..? :)

Soweit ich weiss, läuft die IDE auch auf einem Raspi.

Dein Nano-Klon ist teuer, aliexpress.com Nano-V3-ATmega168-CH340-MicroUSB 1,55€ inclusive Versand (China Lieferzeit).

Python ist gut geeignet mit den Arduinos zu kommunizieren.

Für was brauch ich die IDE denn? Der PI kann auch so auf der Schnittstelle lauschen..

Ich dachte ich brauch die IDE einmalig um den Code drauf zu bekommen.

Ich will das Teil morgen haben:) Deshalb lieber kein China...

modsfabio: Für was brauch ich die IDE denn? Der PI kann auch so auf der Schnittstelle lauschen..

Ich dachte ich brauch die IDE einmalig um den Code drauf zu bekommen.

Ich will das Teil morgen haben:) Deshalb lieber kein China...

Ja, die IDE brauchst du erstmal zum flashen und kannst dann auch die Daten der USB Schnittstelle anzeigen. Ich habe vermutet, du wolltest es so machen.

Ich flashe meine Quellcode auf den Nano mithilfe der IDE. Danach brauch ich diese ja garnicht mehr..

Der Code sendet ja jetzt jede Sekunde die Werte per USB raus. Jetzt muss ich dem PI nurnoch sagen, dass er am USB Port "lauscht". Da sollten die Daten ja im Format "SONNE;WIND" ankommen.

Ich hoffe, dass das Teil morgen kommt, dann kann ich es gleich ausprobieren..

Kling ja eigentlich relativ simpel. Ich hoff nur, dass da kein Denkfehler ist..

Vielen Dank für eure Hilfe schonmal!

Soll der Nano nur einen MCP3008 ersetzen ?

https://www.raspiprojekt.de/machen/basics/schaltungen/26-analoge-signale-mit-dem-mcp3008-verarbeiten.html

(Ich will dich aber nicht aus dem Arduino Forum vertreiben)

michael_x:
Soll der Nano nur einen MCP3008 ersetzen ?

https://www.raspiprojekt.de/machen/basics/schaltungen/26-analoge-signale-mit-dem-mcp3008-verarbeiten.html

(Ich will dich aber nicht aus dem Arduino Forum vertreiben)

2 von denen soll er ersetzen. Und vielleicht in Zukunft noch mehr…
Allerdings hat mein PI nurnoch einen GPIO frei… das wird nicht gehen.

Mit dem Nano kann ich das ja viel einfacher verwalten dann. Könnte den Nano sozusagen als Sensor-Input-Device benutzen und er leitet alle Sensorwerte an den Raspberry weiter. Kling doch gut oder? :slight_smile:

Hallo zusammen,

habe das Teil bekommen, aber es funktioniert nicht, wie erwartet..

Der Windsensor sendet anscheinend Impulse. Kann ich diese Impulse auch an dem Analogen A0 auslesen? Irgendwie bekomme ich das nicht so ganz gebacken..

Der Sonnensensor scheint mir immer die gleiche Spannung zu geben von ca 0.4 V. Das verstehe ich auch nicht so richtig..

Kann mir da jemand helfen?

Kann ich diese Impulse auch an dem Analogen A0 auslesen?

Jein. Du kannst kein analogRead(A0) machen, aber du kannst A0 auch mit digitalRead lesen, und die Zeit zwischen zwei Impulsen messen. (Geht aber auch mit jedem anderen Pin)

Wenn der Sonnensensor eher als Stromquelle wirkt, kannst du eine Spannung an einem kleinen Lastwiderstand messen. Allerding ist 0.4V Leerlaufspannung nicht viel ?

michael_x: Du kannst kein analogRead(A0) machen,

Einspruch. Natürlich kannst du auch ein analogRead(A0) machen, das ist nur langsamer, unhandlicher, schwerer auszuwerten, kurz und gut sinnfrei.

Die Impulse musst du erkennen, d.h. den Wechsel zwischen den Zuständen LOW und HIGH erkennen und eventuell auch entprellen, völlig ungeachtet der Methode mit der du den aktuellen Zusatnd feststellst.

Ich weiß nicht wie genau die Sensoren angeschlossen sind.

Ich habe 3 Drähte hier. Ich dachte eigentlich, dass einer der Minus ist und die anderen beiden Plus des jeweiligen Sensors. Da bekomme ich aber immer die gleichen Werte für beide Sensoren.. (max 1-2 Unterschied bei analogRead())

Ich müsste ja wahrscheinlich Strom auf den gemeinsamen Draht geben und für den Windsensor die Impulse messen bzw für den Sonnensensor die Spannung, die wieder zurückkommt.

Oder sehe ich das falsch?

Wenn ich das Messgerät dran halte, bekomme ich bei beiden um die 0.4V, egal ob Wind oder nicht. Wenn Wind ist, fällt zwischendurch sie Spannung immer auf 0.0V. Bei der Sonne konnte ich nichts feststellen..

Ab wann ist ein digitalRead LOW und ab wann HIGH?

VIL Input Low-voltage Min -0.5 Max 0.3 * VCC V

VIH Input High-voltage Min 0.7 * VCC Max VCC + 0.5 V

modsfabio: Ich weiß nicht wie genau die Sensoren angeschlossen sind.

Ich habe 3 Drähte hier. Ich dachte eigentlich, dass einer der Minus ist und die anderen beiden Plus des jeweiligen Sensors.

Das muss im Datenblatt der Sensoren stehen, was was ist. Niemals Sensoren kaufen, wo es kein Datenblatt oder Anschlussplan gibt. Gib uns doch mal einen Link auf die Sensoren. Vielleicht können wir dir helfen.

Die Sensoren sind von der alten Steuerung.. Kein Datenblatt vorhanden..

Wenn ich messe, habe ich bei beiden ca 0.4V, egal wie viel Sonne oder Wind.. Also muss es ja anders funktionieren..

Windgeschindigkeit per Puls macht Sinn ( Wie beim Fahrrad-Tacho ) Sonnenschein kann ein aktives Element sein (irgendwo müssen die seltsamen 0.4 V ja her kommen) oder ein Photowiderstand.

Also muss es ja anders funktionieren.

Ist denn klar, welcher der 3 Pins GND ist ? "Wind" ist höchstwahrscheinlich ein "openCollector" d.h. 5V via pullup-Widerstand, an dem du dann 5V / 0V Pulse einfach erkennen kannst. Kannst du auch einfach an einen  pinMode(windPin, INPUT_PULLUP);anschliessen. Nichts gegen deine gemessenen 0.4V, aber "Sonne" ist vermutlich auch eher was passives.

Foto der Sensoren? Bitte mit ausreichender Schärfe und Größe, damit Beschriftung lesbar ist.