Forum: Mikrocontroller und Digitale Elektronik Was brauche ich?


von Stefan L. (steloe)


Lesenswert?

Hallo zusammen,
Ihr könnt mich bestimmt auf den richtigen Weg lotsen. Ich habe einen 
Laderegler dessen Register ich an der RS232 Schnittstelle per RTU Modbus 
abfragen kann. Diese Werte möchte ich dann zu einer Kamera als Klartext, 
also ASCII weiterschicken. Was brauche ich denn dazu alles wenn ich das 
mit einem µC realisieren will?
Oder kann man das auch einfach z.B. mit einer SPS ohne große Bastelei 
machen?

Oder welche Möglichkeiten habe ich noch so etwas zu realisieren?

Herzlichen dank schonmal für euren Input.

Steloe

von Programmierer (Gast)


Lesenswert?

Stefan Löffler schrieb:
> RS232 Schnittstelle per RTU Modbus abfragen

Das könntest du mit einem USB-RS232 (seriell) Wandler günstig haben.

> Diese Werte möchte ich dann zu einer Kamera als Klartext, also ASCII
> weiterschicken

Versteh' ich nicht, normalerweise sind Kameras für Bilder geeignet, 
nicht für ASCII.

von Achim M. (minifloat)


Lesenswert?

Programmierer schrieb:
>> Diese Werte möchte ich dann zu einer Kamera als Klartext, also ASCII
>> weiterschicken
>
> Versteh' ich nicht, normalerweise sind Kameras für Bilder geeignet,
> nicht für ASCII.

Vielleicht ein OSD als overlay auf eine Kamera:
http://www.webx.dk/rc/video-wireless/video-osd.htm
mf

von Stefan L. (steloe)


Lesenswert?

Die Kamera verfügt über einen entsprechenden Eingang und ich kann die 
Werte dann Softwareseitig als OVerlay einfügen^^

von Achim M. (minifloat)


Lesenswert?

Stefan Löffler schrieb:
> Die Kamera verfügt über einen entsprechenden Eingang

dann klär uns mal auf, was ein ASCII-Eingang ist, oder was da dran steht 
oder was das überhaupt für ein Eingang ist. Oder welche Kamera das genau 
ist, dass es deine Kamera ist wissen wir ja bereits, trägt aber nicht 
zur Problemlösung bei.

In der Netiquette steht übrigens, dass gezieltes zurückhalten von 
Informationen nicht gern gesehen ist...

von Stefan L. (steloe)


Lesenswert?

Stefan Löffler schrieb:
> Die Kamera verfügt über einen entsprechenden Eingang und ich kann die
> Werte dann Softwareseitig als OVerlay einfügen^^

also die Cam will auch per Modbus gefüttert werden, aber eben ASCII.

von Achim M. (minifloat)


Lesenswert?

Stefan Löffler schrieb:
> Was brauche ich denn dazu alles wenn ich das
> mit einem µC realisieren will?

Einen µC mit serieller Schnittstelle+Hühnerfutter, einen 
MAX232+Hühnerfutter, einen Spannungsregler mit ein bisschen 
Hühnerfutter.

Dann brauchst du eine Software, die die Werte als RTU-Frames 
entgegennimmt(vermutlich 8- oder 16-Bit Zahlen), in einen String 
verwandelt, ein bisschen umformatiert und wieder als ASCII-Frames 
ausspuckt.

Mit einer SPS kanns natürlich auch gehen.

Kannst du ein bisschen C?
mfg mf

von Stefan L. (steloe)


Lesenswert?

C++ und java hab ich schon mit gearbeitet.
Programmieren muss ich den µC in C?


Das Modbus Protokoll muss ich ja selbst implementieren auf dem 
Controller, gibt es da evtl nicht was gebrauchsfertiges? Oder gute Tuts? 
Mit Mikrocontroller hab ich nämlich noch nie was gemacht..

Reicht sowas hier: 
http://www.steitec.net/AVR-Boards/BASE-AVR-XMEGA128A1.html

oder dieses hier
http://www.steitec.net/AVR-Boards/BASE-AVR-EASY88-LCD---Arduino.html

oder kann mir jemand was empfehlen? Was brauche ich noch um Anfangen zu 
können? Spannungsversorgung und nen entsprechendes Kabel um das Board 
mit der RS232 des Ladereglers verbinden zu können und eines um das Board 
mit der Cam zu Verbinden?

Die Cam hat für die High-Pegel -3V ... -12V und für Low +3V ... + 12V 
angegeben, sehe ich das richtig dass ich dann auf den MAX232verzichten 
kann?

von Stefan L. (steloe)


Lesenswert?

Ganz ruhig, erstmal Schock bekämpfen und durchatmen.

Und dann nochmal überlegen warum man einem Hilfesuchenden, der von der 
Materie NULL Ahnung hat direkt so angehen muss.

Das Forum ist doch nunmal dazu da Fragen zu stellen und es gibt immer 
Leute die mehr Wissen als der andere, was hat das mit Dummies zu tun?
Zudem, ich habe mich lediglich Versichert dass ich den Zusammenhang 
richtig verstanden habe. Wenn Sie sich dadurch belästigt fühlen dann 
lassen sie das Antworten doch sein. Es gibt andere Hilfsbereite Menschen 
die gerne was dazu sagen ohne gleich unfreundlich werden zu müssen.

FAIL sag ich da nur...

von Achim M. (minifloat)


Lesenswert?

Stefan Löffler schrieb:
> Die Cam hat für die High-Pegel -3V ... -12V und für Low +3V ... + 12V
> angegeben, sehe ich das richtig dass ich dann auf den MAX232verzichten
> kann?

Nein, nicht weglassen. Genau das erledigt der Max232. Normalerweise ist 
für einen Mikroprozessor Low-Pegel 0V und High-Pegel +5V oder +3,3V oder 
so. Klar käme man mit irgendwelchen Trickschaltungen auch dahin, aber 
der MAX geht wenigstens zuverlässig.
 Ich glaub, du bist dir nicht im Klaren, dass die Daten hier strukturell 
umgewandelt werden müssen. Dazu muss man die RS232-Sinale eben dem µC 
schmackhaft machen, dass der mit der eingebauten Peripherie was damit 
anfangen kann. Nachher eben wieder zurück.

Stefan Löffler schrieb:
> und nen entsprechendes Kabel um das Board
> mit der RS232 des Ladereglers verbinden zu können und eines um das Board
> mit der Cam zu Verbinden?

Mach dich mit allen beteiligten Schnittstellen und deren 
Beschreibungen/Spezifikationen vertraut. Das auf physikalischer und auf 
logischer Ebene. Dann hast du ein bisschen Durchblick. Dann kannst du 
dir überlegen, wie die Kabel aussehen könnten.

Das Board hier:
http://www.steitec.net/AVR-Boards/BASE-AVR-EASY88-LCD---Arduino.html
scheint geeignet zu sein. Da ist nämlich ein Max232 drauf.

Also, du kannst C++, dann kannst du auch C. Ein gutes Tutorial für C für 
AVRs gibt es z.B. hier: AVR-GCC-Tutorial (ohne Arduino-Libraries)

Arduino ist nichts anderes als eine Sammlung an C-Bibliotheken für AVR 
und andere Prozessoren. Ob du jetzt Arduino-C programmierst(Arduino 
nimmt einem anfänglich viel komplizierte Hardware-Initialisierung ab, 
man kann aber nicht alles ausreizen) oder direkt GCC, bleibt dir 
überlassen.

PS: Ich weiß nicht, ob es bereits eine brauchbare C-Library für MODBUS 
gibt. Sollte es aber :)

PPS: In C musst du den µC nicht programmieren. C++ ginge auch, iat aber 
nicht so effizient.
Basic (BASCOM-AVR oder Luna) wirst du wahrscheinlich aus ideologischen 
und AVR-Assembler aus Komfortgründen zurückweisen :)

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.