Codesys Enocean

2016-07-27
2018-11-20
  • marsmännchen - 2016-07-27

    Hallo zusammen,

    nachdem ich es endlich geschafft habe den Raspi zu verbinden und endlich herumprobieren konnte wollte ich mich in Richtung Enocean bewegen.

    Hat jemand das schon ausprobiert?

    http://www.3s-systems.com/projekte/deta ... modul.html

    Wollte nur mal eine Erfahrung hören bevor ich mir so ein Enocean Modul kauf.
    Ausserdem finde ich diesen "Enocean Manager" aus der 3S-System Bibliothek nicht. Wo kann ich den finden?

    Schöne grüsse
    Patrick

     
  • marsmännchen - 2016-09-22

    Ok, ich nehme das mal als ein nein...

     
  • almot89 - 2016-10-11

    ich suche auch Informationen darüber..... schon Erfolg gehabt?

     
  • marsmännchen - 2016-10-12

    Nein,keine Antwort von irgendwem.Nicht mal stundenlange Google recherche hat was gebracht (und glaub mir,ich habe vieeeel Zeit).
    Ich habe am Sonntag 3S-Systems angeschrieben, da kommt auch nichts zurück.
    Wobei das Modul hab ich schon, weil ich dachte ich find das schon irgendwie raus. Aber ich weiss nicht mal wie ich anfangen soll.

    Ich meld mich bei dir wenn sich was tut.

     
  • almot89 - 2016-10-12

    cool, mir geht's 100% genau so.......Ich würde gerne temperaturfühler in den Wohnräumen nachrüsten, um die Fußbodenheizung besser zu steuern.....

     
  • Bastler83 - 2016-10-25

    Habe auch kein Antwort von der Firma 3S bekommen!!

    Habe mal angefangen ein Projekt zu realisieren!
    Empfang funktioniert zu 99%

    Beim senden stehe ich noch ein wenig an. Wenigstens hab ich es geschafft die CRC8 zu erzeugen

    Gruss

    EnOcean9.projectarchive [147.72 KiB]

     
  • almot89 - 2016-10-27

    cool, das sich da bei dir was tut....

    Ich habe einfach zu wenig wissen, um das allein auf die Beine zu stellen.
    hast du auch diese Erweiterungsplatine die auf das GPIO gesteckt wird?

    Wie hast du das Linux konfiguriert?

     
  • almot89 - 2016-10-29

    ich danke dir, ich werde nächste Woche mal wieder mein test Raspberry aufbauen und mal gucken ob ich auch noch was herausfinden kann....

     
  • marsmännchen - 2016-10-29

    wow, vielen dank! Ja, leider fehlt auch mir dieses spezielle wissen!

    Werd das auch gleich mal probieren!

    MfG

     
  • Bastler83 - 2016-10-31

    Ich habe noch so meine Probleme mit der seriellen Schnittstelle.
    Irgendiwe liest die nicht immer so synchron ein wie sie sollte.
    der String startet ja mit 0x55. Und am Anfang hat es gepasst dass 0x55 immer an erster Stelle des ReadBuffers war. Und je nach Code passt das mit der Zeit nicht mehr. Gibt es ein Weg die Serielle Schnittstelle auf einem Kern laufen zu lassen? So das sie synchron läuft?

     
  • marsmännchen - 2018-11-13

    Wollte mal den thread nur "anstossen". Hat jemand eine zuverlässige Lösung gefunden?
    Meine Versuche die letzten 2 Jahre (mit Unterbrechungen) sind wohl absolut nutzlos gewesen..

    MfG
    Patrick

     
  • marsmännchen - 2018-11-15

    Naja, funktioniert mal wieder nicht.
    Zuerst die Sache mit dem Watchdog: EXCEPTION [ProcessorLoadWatchdog] occurred in: App=[all], Task=[all]
    Processorload watchdog: plcload=100, maxupload=95

    Das hab ich gerade noch gefunden.

    Aber jetzt unterbricht ständig die Verbindung wenn ich auf RUN drücke und beim neuen Scanvorgang findet Codesys den Raspberry nicht mehr.

    Und sollte er sich wirklich mal verbinden lassen wird mein Enoceanschalter einfach ignoriert...

    Funktioniert das Beispiel eigentlich mit einem PTM215 Taster? Wegen dem Rolling Code ? https://www.enocean.com/en/enocean-modu ... s/ptm-215/

    Und warum wird das lt.Anleitung bei "fbLightGroup" als dwID eingetragen??

     
  • marsmännchen - 2018-11-17

    Ok,
    Raspberry neu aufgesetzt, jetzt lässte er sich wieder verbinden.
    Auch kein Watchdog Fehler obwohl ich den Wert auf 95 belassen habe.

    Geh ich richtig in der Annahme das meine serielle Verbindung gar nicht funktioniert? Raspberry ist im RUN-Modus und es zeigt aber folgendes:

    Obwohl ich:

    MfG
    Patrick

    IMG: Bild

    IMG: Bild

     
  • eschwellinger

    eschwellinger - 2018-11-18

    Hallo Patrick,
    hast du denn die Schnisttelle mit
    sudo raspi-config
    aktiviert?

    Grüße
    Edwin

     
  • marsmännchen - 2018-11-18

    Ja hab ich eigentlich.
    Die erste Frage ob es an die Konsole gehen soll mit NEIN,
    die zweite frage ob es Hardwaremässig aktiviert sein soll mit JA.

    Habe bei [SYSCOM] in CodesyControl_User. mit ttyS wie in der Anleitung und ttyAMA0 versucht.

    MfG
    Patrick

     
  • eschwellinger

    eschwellinger - 2018-11-20

    Hi Patrick,

    überprüfe nochmals beide Konfiguration files:
    CODESYSControl.cfg und CODESYSControl_User.cfg

    nach der Sektion und ttyS ( die darf nur in CODESYSControl_User.cfg)
    [SYSCOM]

    ttyS sollte die korrekte Schnisttelle sein ( für den auf die GPIO gesteckten Enocean Adapter)

    schau mal bitte unter Linux mit
    dmesg | grep -i tty
    ob die auch verfügbar.
    (es gibt ja dieses Enocean Modul aus als USB Version)

    Grüße
    Edwin

     
  • marsmännchen - 2018-11-20

    Hallo, das wäre meine CODESYSControl.cfg:

    [SysFile]
    FilePath.1=/etc/, 3S.dat
    PlcLogicPrefix=1
    [CmpLog]
    Logger.0.Name=/tmp/codesyscontrol.log
    Logger.0.Filter=0x0000000F
    Logger.0.Enable=1
    Logger.0.MaxEntries=1000
    Logger.0.MaxFileSize=1000000
    Logger.0.MaxFiles=1
    Logger.0.Backend.0.ClassId=0x00000104 ;writes logger messages in a file
    Logger.0.Type=0x314 ;Set the timestamp to RTC
    [CmpSettings]
    FileReference.0=SysFileMap.cfg, SysFileMap
    FileReference.1=/etc/CODESYSControl_User.cfg
    [_]
    Linux.DisableFpuOverflowException=1
    Linux.DisableFpuUnderflowException=1
    Linux.DisableFpuInvalidOperationException=1
    [CmpBACnet]
    IniFile=bacstacd.ini
    [CmpWebServer]
    ConnectionType=0
    [CmpOpenSSL]
    WebServer.Cert=server.cer
    WebServer.PrivateKey=server.key
    WebServer.CipherList=HIGH
    [SysMem]
    Linux.Memlock=0
    [CmpCodeMeter]
    InitLicenseFile.0=3SLicense.wbb
    [SysEthernet]
    Linux.ProtocolFilter=3
    [CmpSchedule]
    ProcessorLoad.Enable=1
    ProcessorLoad.Maximum=95
    ProcessorLoad.Interval=5000
    DisableOmittedCycleWatchdog=1
    

    Das meine CODESYSControl_User.cfg: (ttyAMA0 und ttyS beides schon probiert)

    [SysCom]
    Linux.Devicefile=/dev/ttyAMA0
    [CmpBlkDrvCom]
    ;Com.0.Name=MyCom
    ;Com.0.Baudrate=115200
    ;Com.0.Port=3
    ;Com.0.EnableAutoAddressing=1
    [SysProcess]
    Command.0=shutdown
    [CmpApp]
    Bootproject.RetainMismatch.Init=1
    

    UND:
    dmesg | grep -i tty
    [ 0.000000] Kernel command line: bcm2708_fb.fbwidth=656 bcm2708_fb.fbheight=416 bcm2708_fb.fbswap=1 vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000 dwc_otg.lpm_enable=0 console=tty1 root=PARTUUID=c488f1a8-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles
    [ 0.000356] console [tty1] enabled
    [ 0.721315] 3f201000.serial: ttyAMA0 at MMIO 0x3f201000 (irq = 87, base_baud = 0) is a PL011 rev2

    Ich weiss eigentlich gar nicht was in der CodesysControl.cfg genau stehen sollte, hab nur in der Anleitung von der [SYSCOM] in CodesysControl_User.cfg gelesen.

    Habe es einmal mit einem Raspberry2 und einem Raspberry3 versucht, jeweils mit Jessie.
    Das Projekt hab ich geladen und dann "alles auf neuest setzen" (Compilerversion 3.5.12.0->3.5.13.10)
    Danach "Gerät aktualisieren"(CODESYS Control for Raspberry PI 3.5.13.20)
    MfG
    Patrick

     
  • eschwellinger

    eschwellinger - 2018-11-20

    ja also... da haben wir den Salat

    Nimm mal das aktuellste Rasbian also Stretch.
    Dann in CODESYSControl_User.cfg für den Fall das du das Ausatzboard auf die GPIO's verwendest

    [SysCom]
    Linux.Devicefile=/dev/ttyS

    wenn es ein USB Enocean Modul ist muss es ttyAMA heißen nicht (ttyAMA0)

    [SysCom]
    Linux.Devicefile=/dev/ttyAMA

    Grüße
    Edwin

     
  • marsmännchen - 2018-11-20

    Schade schade,leider nicht..
    Ist ein Aufsatzboard.
    Hab meinen Raspberry 2 auf Stretch:

    cat /etc/os-release
    PRETTY_NAME="Raspbian GNU/Linux 9 (stretch)"
    NAME="Raspbian GNU/Linux"
    VERSION_ID="9"
    VERSION="9 (stretch)"
    ID=raspbian
    ID_LIKE=debian
    HOME_URL="http://www.raspbian.org/"
    SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
    BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"

    Da ich mich leider mit OOP noch sehr schlecht zurechtfinde (und generell kein Programmierer bin ),..... woher seh ich eigentlich das das ComPort funktioniert/überträgt?
    Weil z.b.: hCom 16#FFFFFFFF sieht für mich nach Fehler aus.
    Ich sehe da nur einen Haufen Fragezeichen was mir den Grund zur Annahme gibt das es schon mal mit der Schnnittstelle nicht funktioniert.

    MfG
    Patrick

    edit
    Hab gerade minicom installiert, so ein simples Schnittstellenprogramm
    Dort empfange ich auf ttyAMA0 wenn ich den Taster drücke.
    ttyS kennt er gar nicht.
    Ich glaube ich sollte bei ttyAMA0 bleiben, oder?
    Und nachdem der Raspberry funktioniert, mein Enocean TCM310 und mein Taster, mach ich scheinbar in Codesys was falsch.

    EDIT!!!!!!!!!
    ICH HAB ES GESCHAFFT!!! Nach drei Tagen à 8 Stunden.
    In Codesyscontrol_User.cfg muss es ttyAMA heissen.Nicht ttyAMA0.
    Durch den Tipp von Hr.Schwellinger das es bei USB so heissen sollte hab ich es mal so versucht. Obwohl ich die Aufsteckplatine habe.
    Vielen vielen dank für die Hilfe.
    Jetzt geh ich erst mal was trinken...

     

Log in to post a comment.