Seite 1 von 2
Pollin: AVR-NET-IO ansteuern
Verfasst: Dienstag 14. Oktober 2008, 17:47
von komoloko
Hallo!
Damit das Thema aktuell bleibt, da ich noch nach einer anständigen Ansteuerung suche, füge ich mal meinen letzten Beitrag ein. Es geht um das AVR-NET-IO Board von Pollin, kostet sehr wenig und hat 8 Digitale Ausgänge, 4 Digitale und 4 Analoge Eingänge. Das Board wird per lan angesprochen, was größere Distanzen ermöglicht und bei Betrieb an einem Wlan Router auch Drahtlos zu erreichen ist.
Ein sehr Interessantes Board, wie ich finde. Und vielleicht mag mir ja jemand helfen das über PL anzusteuern. Eventuell könnte sich auch mal Abacom zu Wort melden? Wäre doch ein schönes neues Bauteil für PL...
Und hier der Beitrag:
Wie wäre es denn mit dem Bauteil Modbus/TCP, wenn man hier die Befehle anpassen würde?
Ich kann damit das Bauteil ansprechen, aber ich bekomme keine Antwort, da der Befehlssatz sich unterscheidet. Aber im Grunde (denk ich) wäre es doch eine kleinere Geschichte hier den Code anzupassen?!
Die IP Adresse kann geändert werden, der Port ist 50290.
Das kann man ja bei den Modbus/TCP Bauteil einstellen.
Fehlen nur die richtigen Befehle. Vielleicht kann man ja die vorhandene DLL vom Modbus so ändern, das man das Bauteil ansprechen kann?! Wäre schön wenn es da eine Lösung geben würde.
Habe mal die Befehle rausgesucht:
1. Digitalen Eingang abfragen
Kommando: GETPORT
Parameter: X
Beispiel: GETPORT 1 (ruft den Zustand des digitalen Eingangs 1 ab)
Funktion: akt. Status des jeweiligen Digitaleingangs einlesen X steht für den gewählten Digitaleingang
Antwort: Zustand des Eingangs bei High-Pegel = 1, bei Low-Pegel = 0 als ASCII-Zeichen
2. Analogen Eingang abfragen
Kommando: GETADC
Parameter: X
Beispiel: GETADC 3 (ruft den akt. Wert des ADC-Eingangs 3 ab)
Funktion: akt. Werte der möglichen ADC-Eingänge abrufen X steht für den gewählten ADC-Eingang
Antwort: Dezimaler Wert des gewählten ADC-Kanals z.B. (936)
3. Ausgang schalten
Kommando: SETPORT
Parameter : X.Y
Beispiel: SETPORT 4.0 (Schaltet Ausgang 4 auf LOW)
Funktion: X steht für den gewählten Ausgang welcher geschaltet werden soll.
Wenn Y=0 dann Ausgang=0, wenn Y=1 dann Ausgang=1.
Anwort: „ACK“ wenn positiv
„NAK“ wenn Fehler aufgetreten sind
4. Status abrufen
Kommando: GETSTATUS
Parameter: keine
Funktion: Status der Ausgänge abfragen.
Antwort: „S“+Pinstatus mit „1“ für High oder „0“ für Low als ASCII-Zeichen
z.B. S11000101 d.h. Ausgang 1=High, Ausgang 2=Low, Ausgang 3=High usw...
Re: AVR-NET-IO von Pollin ansteuern
Verfasst: Mittwoch 15. Oktober 2008, 22:08
von mcskof
Neben der Möglichkeit auf PL Unterstützung zu warten, besteht auch die Möglichkeit, die Board-Firmware an PL anzupassen.
Das Board
http://www.ulrichradig.de/home/index.php/avr/eth_m32_ex soll dem AVR-NET-IO sehr ähnlich sein (siehe
http://www.mikrocontroller.net/topic/109988). Der Sourcecode für dieses Board ist offen und kann angepaßt werden, um z.B. die MODBUS/TCP Library
http://freemodbus.berlios.de/ einzubinden. Eine Portierung (MODBUS/RTU) für AVR Controller existiert bereits.
Interessant ist auch
http://de.klinkerstein.m-faq.de/index.p ... oWebServer.
CU
mcskof
Re: AVR-NET-IO von Pollin ansteuern
Verfasst: Freitag 17. Oktober 2008, 08:35
von abacom
Das Board ist natürlich interessant, aber...
- Die 'original' Firmware wird sich wahrscheinlich regelmässig ändern und versteht sich wohl als Beispiel.
Das Risiko dass die Anpassung dann irgendwann nicht mehr läuft ist uns einfach zu gross.
- Ausserdem ist das Board ist ja extra dafür ausgelegt eigene Firmware darauf zu flashen.
- Den Ansatz einen Modbus/TCP-Server für das Board zu entwickeln scheint uns ein sehr guter Ansatz. Das wäre weitgehend zukunftssicher und ausserdem softwareunabhängig. Da sind AVR-Entwickler gefragt...
Re: AVR-NET-IO von Pollin ansteuern
Verfasst: Samstag 18. Oktober 2008, 14:18
von komoloko
Gibt es die Möglichkeit den Quellcode der DLL für die Bauteile Modbus/TCP Read Coil und Write Coil zu bekommen?
Dann könnte ich versuchen die DLL umzuschreiben.
Holger
Re: AVR-NET-IO von Pollin ansteuern
Verfasst: Montag 20. Oktober 2008, 08:17
von abacom
Nein, es gibt keine DLL. Die Modbus-Implementation ist Bestandteil der PL-Source, die wir natürlich nicht herausgeben können.
Re: AVR-NET-IO von Pollin ansteuern
Verfasst: Mittwoch 10. Dezember 2008, 22:06
von bigdie
Hallo
Kann man nicht ein TCP/IP Bauteil erstellen mit dem man die Befehle als String senden und empfangen kann? Wenn sich dann der Befehlssatz ändert oder jemand die Firmware erweitern will, wäre es kein Problem.
Re: AVR-NET-IO von Pollin ansteuern
Verfasst: Donnerstag 11. Dezember 2008, 10:26
von abacom
Ja, kann man. Das Problem ist, dass wir nicht jede gute Idee immer sofort "auf Zuruf" sofort umsetzen können. Leider.
Re: AVR-NET-IO von Pollin ansteuern
Verfasst: Donnerstag 22. Januar 2009, 00:14
von bigdie
Hallo
Falls es noch interessiert, im neuen Katalog gibt es das Modul auch als Fertigteil für Leute die der Löterei nichts abgewinnen können.
http://www.pollin.de/shop/shop.php?cf=d ... 4OTU4&ts=0
Re: AVR-NET-IO von Pollin ansteuern
Verfasst: Mittwoch 1. April 2009, 12:12
von abacom
ProfiLab Expert 4.0 - Update vom 01.04.2009 unterstützt nun das Gerät. Für DEN Preis wirklich ein Hit!
Re: AVR-NET-IO von Pollin ansteuern
Verfasst: Mittwoch 1. April 2009, 17:49
von bigdie
Hallo
Ich sage schon mal danke. Ich habe es noch nicht installiert...
Re: AVR-NET-IO von Pollin ansteuern
Verfasst: Donnerstag 16. April 2009, 16:29
von komoloko
Hallo!
Finde es super, das es nun in PL integriert ist. Dafür schonmal ein dickes Dankeschön!
Bei mir erscheint jedoch nach ein paar mal klicken die Meldung "Read Timeout", und dann lässt sich das Modul nicht mehr ansprechen.
Beim compilierten Projekt ist das noch schlimmer. Bricht etwa alle 60 sekunden die Verbindung ab.
Viele Grüße, Holger
Re: AVR-NET-IO von Pollin ansteuern
Verfasst: Donnerstag 16. April 2009, 21:59
von compander
Hallo Freunde.
Auch ich freue mich, dass von Abacom dieses Modul an PLE angebunden wurde!
Im Modul nutze ich z.Z. nur die 4 analogen Eingänge.
(die HW für die digIN und digOUT ist noch nicht fertig)
Es werden 4 Spannungen (bis 5 V) in das Modul geführt, und in PLE mit num. Displays und Y/t-Schreiber dargestellt (Langzeitmessung; lief mehr als 2 Tage). Soweit alles OK.
Ich habe heute die Messung unterbrochen, und 2 Stunden die compilierte Version laufen lassen. Auch alles OK.
Vorauf ich hinaus will, ist ein anderer Effekt. In völlig unregelmässigen Abständen kommt es vor, dass offensichtlich keine Werte in PLE ankommen. Die num. Anzeige "friert" ganz kurz ein. Das dauert
deutlich weniger als eine Sekunde. Dann geht es ganz normal weiter. Mir ist das erst heute aufgefallen, da ich sehr langsame Vorgänge messe und darstelle. Dazu kommt der Umstand, dass 10 eintreffende Werte je Sekunde gemittelt werden.
Erst als ich heute probeweise diese "Mittelung" herausgenommen habe, und mir länger die num. Display angesehen/verfolgt habe, ist mit das aufgefallen. Beim Y/t-Schreiber sieht man die Auswirkungen kaum, da die Spannungsverläufe/"Abtastraten" (bei mir) sehr langsam sind.
Abschliessend kann ich feststellen: meine Aussage gilt sowohl für eine Projektdatei wie auch für eine compilierte Version.
Kennt jemand den Effekt?
Wie gesagt: sonst läuft alles prima.
Kleiner Hinweis. (vielleicht ist es jedoch nur bei mir so!)
Hatte deutliche Probleme bei der Installation/Konfiguration/Inbetriebnahme.
Erst als ich die MAC-Adresse
NICHT eingetragen habe, lief das Modul einwandfrei.
Noch ein kleiner Nachtrag. Da mit meiner obigen Aussage:
"In völlig unregelmässigen Abständen ..." vermutlichlich niemand richtig etwas anfangen kann, will ich dies eingrenzen. Ich würde sagen: zwischen 5 Sekunden und 10 Minuten gilt als sicher.
Herzlichen Gruß vom C

mpander.
Re: AVR-NET-IO von Pollin ansteuern
Verfasst: Freitag 17. April 2009, 12:13
von abacom
Ich habe einmal das mitgelieferte Beispiel compiliert. Dieses läuft bei uns nun seitmehr als 4 Stunden stabil und parallel zu allen Anwendungen und zum Netzwerkverkehr den der Alltag so mit sich bringt. Als mögliche Ursachen für Companders Problem käme vielleicht ein IP-Konflikt mit einem anderen Rechner in Frage. Kommt möglicherweise eine instabile (w)Lan-Verbindung in Betracht? Auch möglich, dass bei älteren Pollin-Geräten ein Firmware-Update nötig ist?
Re: AVR-NET-IO von Pollin ansteuern
Verfasst: Montag 27. April 2009, 18:50
von compander
Hallo Freunde.
Hat jemand das Modul mit PLE stabil "am laufen"?
Vielleicht gar mit einem Rechner mit weniger als 2 GHz-Takt?
(@komoloko: Ich habe dir 2 "pn" geschrieben)
Freue mich auf Rückmeldungen. Vielen Dank, und Gruß vom C

mpander.
Re: AVR-NET-IO von Pollin ansteuern
Verfasst: Samstag 2. Mai 2009, 17:52
von komoloko
Hallo!
War im Urlaub und werde die nächsten Tage wieder testen und berichten!
Bis dahin einen schönen Maianfang!
Re: AVR-NET-IO von Pollin ansteuern
Verfasst: Mittwoch 6. Mai 2009, 00:07
von sjm
I have tried the AVR-Net-IO with PLE4.0 (version 27.04.2009). AVR-Net-IO is a newly built kit with software version 1.03 and default settings as delivered by Pollin.
It connects ok, reads and updates displays ok with the PLE example application with only one problem; CPU utilization is constantly at almost 100% (i.e. 95-98%) (this happens both in "slow" simulation mode and with a compiled application). I have not tested it for extended periods (max. 30 minutes). Computer is 2.8GHz P4 with XP Pro sp2 on a wired network.
I have also discovered that PLE has problems recovering from a communications failure (disconnecting the network cable from the AVR-Net-IO) - to recover, I had to stop simulation, exit and restart PLE.
(The Pollin NetServer 1.03 has been running flawlessly for at least 72 hours continuously, partly simultaneously with PLE, but that does not affect the "100% CPU utilization" problem).
I hope this info may be of benefit to some of you, and perhaps to Abacom in further developing the interface software.
Best regards
sjm
Re: AVR-NET-IO von Pollin ansteuern
Verfasst: Freitag 8. Mai 2009, 18:56
von Noir
nabend zusammen
ich wollte mal fragen ob es möglich ist über Profilab das pollin avr net io mit dem source code von Ulrich Radig anzusteuern?
ich habe zwar gesehen das es von programm ja schon direkt unterstützt wird, aber ist das für alle Versionen algemein oder nur für die Standard Pollin code?
mfg Noir
Re: AVR-NET-IO von Pollin ansteuern
Verfasst: Montag 11. Mai 2009, 11:05
von abacom
Die ProfiLab-Anbindung bezieht sich auf die Pollin-Firmware.
Re: AVR-NET-IO von Pollin ansteuern
Verfasst: Dienstag 12. Mai 2009, 21:19
von bigdie
Hallo
Compander hat mich vergangene Woche gefragt, ob ich seine Anwendung mal testen könne, weil ich schon ein fertiges AVRNETIO von Pollin habe. Ich habe vorher auch schon mal die Funktion getestet, dabei ist mir aber die hohe Prozessorlast nicht aufgefallen. Ich habe mit 2 Rechnern getestet. 1.Rechner Intel Atom Prozessor 1,6 Ghz Win Xp ähnlich der meißten Netbooks. Die Prozessorlast lag hier bei 100%. 97-99% davon kam von der PL Anwendung (8 Schalter, 4LED´s, 4 Digitale Messgeräte, AVRNETIO-Baustein) Fast oder Slow Einstellung egal.
2.Rechner Intel Atom Doppelkernprozessor 2x1,6 Ghz Win Vista
Prozessorlast der PL-Anwendung ca.45% + Erhöhung der Prozente des Desktopfenstermanagers von 3% auf 11%.
Ich habe nun gedacht, das die Prozessorlast sinkt, wenn ich das Aktualisierungsintervall vergrößere. Ich habe die Zeit von 200msec auf 1000 msec erhöht. Ergebnis war eine deutliche Verzögerung beim Schalten meiner Relais. Die Prozessorlast stieg aber auf über 50%. Da mir das sehr merkwürdig erschien habe ich es mal ungekehrt versucht und diese Zeit auf 1msec verkürzt. Ergebnis: Meine Relais reagierten schnell, Die LED an der Netzwerkbuchse des Bausteins flackerte nicht mehr sondern hatte Dauerlicht und die Prozessorlast sank auf 25%. Ich kann mir darauf keinen Reim machen. Da meine Anwendung, wenn sie mal fertig ist, nur gelegentlich laufen soll, stört mich diese hohe Prozessorlast nicht besonders aber merkwürdig ist es trotzdem.
Re: AVR-NET-IO von Pollin ansteuern
Verfasst: Mittwoch 13. Mai 2009, 15:52
von compander
Hallo Freunde.
Ich verwende PLE ausschliesslich auf Laptops (1x 1,3 GHz, und 1x 1,7 GHz. Jeweils XP).
Und ich habe 2 AVR Net IO-Karten (Fertiggeräte).
Egal wie ich alle Geräte kombiniere, es kommt immer das selbe raus. 100 % Systemleistung.
Es läuft soweit alles einwandfrei. Bis ich ein weiteres Programm öffne. Z.B. den Taskmanager (um sich die Sys-Leistung anzusehen).
Für die Dauer des Öffnens frieren die num. Anzeigen ein. Bez. setzen die Spuren im Y/t-Schreiber aus.
Diese Effekte treten auch dann auf, wenn ich mit der Maus über die "Start, Stop, HiLo-Tasten" fahre.
Das Ganze ist unabhängig davon, ob ich im Slow/Fast-Modus bin.
Auch ist es egal, welchen "Request Delay"-Wert ich eigestellt habe.
Da ich immer 100% Systemauslastung habe, kann ich leider die Effekte von "Bigdie" nicht nachvollziehen. Was jedoch nicht bedeutet, dass ich sie nicht glaube! Es ist alles sehr merkwürdig.......
Wer kann hier seine Erfahrungen schildern? Positive. Negative?
Anbei noch das Miniprojektchen, mit dem getestet wurde.
Herzlichen Gruß an Alle vom C

mpander.