Elektronik2000.de Forum
» Willkommen - Allgemein Bereich
» Willkommen
meine ziele ;-))
Seiten (1): [1]  
Autor Beitrag
 
piwo
meine ziele ;-))
liebes team - hallo aus wiien !

ihr macht da finde ich ganz tolle sachen auf die ich relativ schnell mit google & schneeballsystem gekommen bin über die net-io.

wer braucht das nicht : eine hauszentrale die "faire" kosten verursachen soll & als offenes system auch noch klug konzipiert sein soll ...

ich komme aus der (linux/windows)-infrastrukturwelt wo man bald mal eine racksteuerung mit ups & environmental sensoring braucht - wer will schon immer vor ort sein oder wissen wann und wo die server gegrillt werden wenn mal die sicherungen der klimaanlage rausschiessen

anyway - ich für mich und freunde will nicht einen "wurscht was preis für zumutungen von apc rittal usw. löhnen"

dazu nimmt mann/frau halt gerne
- openwrt mit einem high-end router (aktuell z.b. der netgear wndr 3800 um 100 eier)
- der an einer ups hängt
- sms schickt über ein altes handy
- ev. aber nicht unbedingt die internet-anbindung fährt
- ev. aber nicht unbedingt die wohnung mit wlan verstrahlt

UND

- als serverzentrale die haustechnik überwacht und steuert :

- alarmanlage
usw.usf.

-----

für genau diesen zweck habe ich jetzt etliche tage HW & SW versucht zu recherchieren und bin halt da gelandet
gut
sehr gut

für mich ist es sehr wichtig nicht selber löten zu müssen weil ich finde dass sowas in professionelle hände gehört wenn schon nicht auf einem bestückungsautomaten implementiert - das ding soll ja funktionieren bitte und nicht ich mich ärgern ;-))

insofern finde ich eure preise & philosophie fair & gut

das was mich natürlich besonders interessiert wäre die anbindung an openwrt/linux :

sowohl das pollen übers netzwerk (d.h die verwendeten tcp/udp-protokolle & ihre feinheiten)
als auch ob und wie man

- ausgangszustände auch an "virtuelle" ausgangsports weiterleiten könnte
d.h. etwas das nicht an einer leitung als strom/spannung anliegt sondern nur in einem softwareregister existiert

(dass das dann übers netz ausgelesen/gepollt werden kann ist schön und gut, aber noch besser wäre es wenn das auch verlässlich übers netz kommuniziert werden könnte - d.h. auf einem entfernten rechner mit einem daemon/service plaudern könnte o.ä.)

bzw

- ob auch "virtuelle" eingangszustände eingespeist werden können
ebenfalls als bit in memory bloss existiert und von remote über das netzwerk gesetzt wird

(ich wage ja gar nicht zu hoffen dass die netio von selber sich mit einem remote daemon/service in verbindung setzt und dort autonom frei programmierbare statuszustände abgleicht ;-)))))

aber bitte das mal als frage ernstzunehmen : wie schaut es generell mit der anbindung an einen als "höhere instanz" arbeitenden server aus ? vllt auch bitte nicht nur windoof - so sehr ich billie boy liebe mein masochismus ist endenwollend und ich liebe offene quellen & eine tolle community über alles

denn : was ist wirklich noch zu tun ?

irgendwer muss ja auch mit mehr transistoren ausgestattet die komplexeren aufgaben übernehmen und die elektrik verlässlich an die e2000-net-io delegieren können

lgwp
piwo ist offline  
 
Tropby (Administator)
Hallo,

ich muss mich jetzt erstmal kurz fassen, da ich grade nicht so viel Zeit habe.
Die steuerung des NET-IO kann schon über TEL-NET geschehen und ist damit auch über eine höhere Instanz ansprechbar. Das dabei durch das pollen eine hohe netzwerklast auftritt ist klar. Geplant ist im ersten Schritt eine Anbindung an Windows zu machen. An Linux haben wir uns jetzt noch nicht versucht. Durch die TelNet Schnittstelle können zur Zeit 48 zustände gelesen, bzw. auch geändert werden. Dazu sind Virtuelle Eingänge in der E2000-Logik-Software intregriert.

Des weiteren soll das E2000-NET-IO ja soweit es geht alle Steueraufgaben selbst übernehmen und keinen "Rechner" brauchen. Sowohl die Uhrzeit als auch weitere dinge soll das NET-IO selbst beherschen und tut es auch schon.
Offene Quellen für das E2000-NET-IO oder die E2000-Logik Software wird es nicht geben. Vielleicht aber für die Linux anbingen!? Jeder der sich etwas mit Programmierung auskennt sollte eigentlich in der Lage sein, einen TelNet-Client zu bauen der einige Steueraufgaben übernimmt.

Das muss jetzt erstmal reichen da ich weiter muss.
mit freundlichen Grüßen
Tropby
_________________________
Elektronik2000.de | Software-Entwickler
Tropby ist offline  
 
piwo
hallo !

ich meine auch dass man so viel wie möglich an aufgaben in einer autarken e2000-net-io abbilden sollte und das ist ja auch die stärke des designs

er ist eine parametrisierte zustandsmaschine (m.a.w. ein intelligenter regler) der autonom und in echtzeit agiert
aber er eignet sich nicht zum speichern grosser datenmengen

er kann nur relativ wenige (akkumulierte) registerwerte halten die einen momentanen zustand auf der t-achse widerspiegeln aber er muss diese momentanwerte auch ganz schnell und zuverlässig wieder vergessen können da einfach nicht soviel platz da ist bzw. die kostbare cpu-zeit zu was anderem verwendet werden muss als vllt. nachträglich gigabyte von messwerten (batchmässig) übers netz loszuwerden

relative komplexe aufgaben die sinnvollerweise auch noch woanders stattfinden sollten sind :

- mails & sms versenden d.h. die ganze benachrichtigungdinge
- messergebnisse zur weiteren verarbeitung aufbewahren
- korrelationen, regressionen und visualisierungen
- statistiken und auswerten

dazu muss eben ein "backing server" existieren der diese ko-aufgaben wahrnimmt und von wo man auch (wie ein mensch über das webinterface) script- und programmgesteuert langsam und bedächtig was vorgeben, umstellen und auslesen kann

ich möchte nochmals betonen : natürlich sollte der e2000 wenn es der user wünscht vollkommen autonom und OHNE jeglichen "co-server" arbeiten können -
ich kann aber aus meiner erfahrung aber nur sagen : wenn man den e2000 wirklich toll einsetzen will in der messtechnik oder als alarmanlage oder als ECHTES GOODIE das nicht im autistischen bereich verbleibt -
der muss dann auch

DAS KOMMUNUKATIONSDESIGN ist also :

1) von zeit zu zeit setzen der parametrierung & abfrage aller inneren zustände (blocking & nonblocking ; externes polling)
2) OPTIONAL : schnelles verlässliches "loswerden" von daten & kritischen zustandsmeldungen in richtung "backing server"
(fire & forget)

wobei 2) nicht ganz so einfach ist, denn das "forget" muss gewisse kriterien erfüllen :
2a) es muss eine schnelle interaktion sein die
2b) wenig protokoll-overhead hat und wo man
2c) sich möglichst wenig um fehler in der kommunikation kümmern muss : solange kein fehler zurückkommt ist das ding gesendet und alles ok

genau für diese sachen gibt es einen terminus : "message passing"

weder tcp noch udp taugen für sowas und diese funktionalität muss daher folgendermassen konstruiert werden :

A) ein neues protokoll ;-))
d.h. wenn man gut drauf ist lautet das zauberwort : sctp

windows : http://www.bluestop.org/SctpDrv/doc/index.html
linux : sowieso ;-))
mega644-toolchain : nunja ich nehme nicht an dass ihr mit der naked gnu-toolchain arbeitet sondern mit einem avr-studio 4 oder eher 5 ;-)) was in source vorhanden ist (d.h. in linux) geht auch da rein - keine frage

B) ein "lightweight message-passing"-framework :

das macht all das zerhacken & zusammenbauen & der resend & die fehler & ....
(ironischerweise basieren etliche auf sctp *gg* ...)

B1) 0MQ (zeromq)
http://www.cs.cmu.edu/~srini/15-441/F11/lectures/r13-0mq.pdf
http://zguide.zeromq.org/page:all
https://lwn.net/Articles/370307/

gibts für windows,linux,...

hoffe das sind mal ein paar anstösse einer soll-architektur
die ist-architektur & -implementierung ist ja meist etwas anderes
aber schlechte implementierungen gibt es schon zu viele

lgwp
piwo ist offline  
 
Tropby (Administator)
Hallo,

wenn du schon soweit anfängst, dann könnte man noch so viel machen. Ein pollen des NET-IO ist zur Zeit ja schon möglich. Weitere Protokolle dem NET-IO zu geben und einfach daten zu versehen vom NET-IO aus, als initial Maschine, ist nicht angedacht. Wir arbeiten daran, dass der Atmel eine Webseite aufrufen kann. Diese kann dann alles weitere übernehmen. Aus unserer hinsicht ist dies für die meisten bediener verständlicher als:

1. Ein System mit Open WRT aufzusetzt. (Ich denke eh, dass 90% der hier im Forum anwesenden Personen nicht wissen was Open WRT ist)
2. Wer sich ein Open WRT-System aufsetzten kann. Der sollte auch in der Lage sein, dort über einen USB-to-Serial-Converter, auf einen Bus zuzugreifen.

Für einzelne Personen wäre eine solche Lösung wie von dir vorgeschlagen bestimmt intressant und auch von Vorteil. Das kann ich aber nicht über die mehrheit sagen. Und wir wollen das System genau für diese Mehrheit entwickeln. Daher wird es wohl bei einem Poll betrieb bleiben. Ich hoffe ich konnte dir aufzeigen warum wir in diese Richtung zur Zeit nicht am arbeiten sind.

mfg
Tropby
_________________________
Elektronik2000.de | Software-Entwickler
Tropby ist offline  
 
piwo
danke für die antwort !

klar ! wie und was ihr etwickelt habt ihr euch gut überlegt und ich habe nicht vor da noch IRGENDWAS dazu zu sagen ;-))

was ich aber mir wünsche : ein bisschen mehr detaillierere info über das innenleben und die architektur dessen was da ist

- auf dem 644er drauf ist
- wie das E2-bus-protokoll auf dem rs485 aussieht
- und was auf den tiny's drauf ist

gibt es blockschaltskizzen ? entwurfspapiere ? sourcecode ?
ist das alles zugänglich oder eher entwicklergeheimnis ?

muss ich da was reverse engineeren wenn ich mich damit beschäftigen will oder darf ich da wo mitlesen ?

lgw
piwo ist offline  
 
Tropby (Administator)
Hallo,

den sourecode wird es, wie schon öfters erwähnt, nicht geben von den Komponenten.

Allgemein kann man die Funktionsweise des 644er so beschreiben:


Logikdatensatz (Biärdaten) werden ins EEPROM gelegt.

1. Der 644er liest sich einen Baustein aus dem EEPROM und verarbeitet die Daten. Statusinformationen der Eingänge wird aus dem RAM gelesen und die Ausgangsinformationen werden ins RAM geschrieben.
2. Der 644er kontrolliert ob auf der Netzwerkschnittstelle was zu tun ist und verarbeitet mögliche Datensätze
3. Wieder bei 1 Beginnen....

Alle 5 Minuten: Nachfragen im Internet nach der Uhrzeit (wird noch langsamer gestellt ist zur Zeit noch zum besseren Test)

Interrupt vom E²-Bus wird zur jeder Zeit bearbeitet.

Bus-Komonenten:
Die Buskomponenten warten immer auf Daten vom Bus und bearbeiten diese. Außerdem halten sie immer ihre Ein-/Ausgänge im Auge.

mfg
Tropby
_________________________
Elektronik2000.de | Software-Entwickler
Tropby ist offline  
Seiten (1): [1]  
 
Suche
» Erweiterte Suche
Optionen
Druckansicht Druckansicht
Thema weiterempfehlen Thema weiterempfehlen