Raspberry Pi 2 B Profinet Master 3.5.6.20 / 3.5.6.30 Fehler

The-JC
2015-04-23
2015-04-24
  • The-JC - 2015-04-23

    Hallo,

    ich habe seit einigen Tagen die Raspberry Pi Runtime Variante von Codesys zum testen heruntergeladen um den Raspi als Profinet Master zu nutzen.
    Die erste Version mit der ich das probiert habe war die 3.5.6.20 und nachdem ich den Profinet Master eingefügt hatte bekam ich nach dem kompilieren 34 Fehlermeldungen, obwohl ich vorher alle fehlenden Bibliotheken nachgeladen habe.
    Version 3.5.6.20:

                    ------ Übersetzungslauf gestartet: Applikation: Device.Application -------
                    Code typisieren ...
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): IoDrvScanModules [IoDrvProfinet]: C0037:  'bufferSize' ist kein Eingang von 'BYTEBUFFER'
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): IoDrvScanModules [IoDrvProfinet]: C0046:  Bezeichner 'TO_UDINT' nicht definiert
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): IoDrvScanModules [IoDrvProfinet]: C0035:  Programmname oder Funktionsblockinstanz an Stelle von 'TO_UDINT' erwartet
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): IoDrvScanModules [IoDrvProfinet]: C0046:  Bezeichner 'bufferSize' nicht definiert
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): IoDrvScanModules [IoDrvProfinet]: C0037:  'bufferSize' ist kein Eingang von 'BYTEBUFFER'
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): IoDrvScanModules [IoDrvProfinet]: C0046:  Bezeichner 'TO_UDINT' nicht definiert
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): IoDrvScanModules [IoDrvProfinet]: C0035:  Programmname oder Funktionsblockinstanz an Stelle von 'TO_UDINT' erwartet
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): IoDrvScanModules [IoDrvProfinet]: C0046:  Bezeichner 'bufferSize' nicht definiert
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): IoDrvScanModules [IoDrvProfinet]: C0037:  'bufferSize' ist kein Eingang von 'BYTEBUFFER'
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): IoDrvScanModules [IoDrvProfinet]: C0046:  Bezeichner 'bufferSize' nicht definiert
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): GetModuleIdentNr [IoDrvProfinet]: C0037:  'bufferSize' ist kein Eingang von 'BYTEBUFFER'
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): GetModuleIdentNr [IoDrvProfinet]: C0046:  Bezeichner 'bufferSize' nicht definiert
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): CheckLicence [IoDrvProfinet]: C0032:  Typ 'Unbekannter Typ: '__CHECKLICENSE(16#1050, xChallenge)'' kann nicht in Typ 'UDINT' konvertiert werden
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): CheckLicence [IoDrvProfinet]: C0046:  Bezeichner '__CHECKLICENSE' nicht definiert
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): CheckLicence [IoDrvProfinet]: C0035:  Programmname oder Funktionsblockinstanz an Stelle von '__CHECKLICENSE' erwartet
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): InitScanConnector [IoDrvProfinet]: C0037:  'bufferSize' ist kein Eingang von 'BYTEBUFFER'
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): InitScanConnector [IoDrvProfinet]: C0046:  Bezeichner 'bufferSize' nicht definiert
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): StoreAlarmData [IoDrvProfinet]: C0037:  'bufferSize' ist kein Eingang von 'BYTEBUFFER'
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): StoreAlarmData [IoDrvProfinet]: C0046:  Bezeichner 'bufferSize' nicht definiert
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): IoDrvUpdateConfiguration [IoDrvProfinet]: C0032:  Typ 'Unbekannter Typ: 'TO_WSTRING(cn.config.InterfaceName)'' kann nicht in Typ 'WSTRING(255)' konvertiert werden
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): IoDrvUpdateConfiguration [IoDrvProfinet]: C0046:  Bezeichner 'TO_WSTRING' nicht definiert
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): IoDrvUpdateConfiguration [IoDrvProfinet]: C0035:  Programmname oder Funktionsblockinstanz an Stelle von 'TO_WSTRING' erwartet
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): CreateSlaveConfig3 [PNSlave]: C0018:  'slave^.MultipleWriteSupported' ist kein gültiges Zuweisungsziel
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): CreateSlaveConfig3 [PNSlave]: C0004:  'MultipleWriteSupported' ist keine Komponente von 'SLAVECONFIG'
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): Start [PN_RDRECImplicit]: C0037:  'bufferSize' ist kein Eingang von 'BYTEBUFFER'
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): Start [PN_RDRECImplicit]: C0046:  Bezeichner 'bufferSize' nicht definiert
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): RPC_Read_cnf [PN_RDRECImplicit]: C0037:  'bufferSize' ist kein Eingang von 'BYTEBUFFER'
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): RPC_Read_cnf [PN_RDRECImplicit]: C0046:  Bezeichner 'bufferSize' nicht definiert
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): AdjustAlignment [IoMapping]: C0032:  Typ 'Unbekannter Typ: 'TO_UDINT(byteOffset)'' kann nicht in Typ 'DWORD' konvertiert werden
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): AdjustAlignment [IoMapping]: C0046:  Bezeichner 'TO_UDINT' nicht definiert
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): AdjustAlignment [IoMapping]: C0035:  Programmname oder Funktionsblockinstanz an Stelle von 'TO_UDINT' erwartet
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): AdjustAlignment [IoMapping]: C0032:  Typ 'Unbekannter Typ: 'TO_UDINT(byteOffset)'' kann nicht in Typ 'DWORD' konvertiert werden
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): AdjustAlignment [IoMapping]: C0046:  Bezeichner 'TO_UDINT' nicht definiert
    [FEHLER]        iodrvprofinet, 3.5.6.20 (3s - smart software solutions gmbh): AdjustAlignment [IoMapping]: C0035:  Programmname oder Funktionsblockinstanz an Stelle von 'TO_UDINT' erwartet
                    Kompilierung abgeschlossen -- 34 Fehler, 0 Warnungen
    

    Nach dem Wechsel zu Version 3.5.6.30 sind es jetzt "nur" noch 18 Fehler.
    Version 3.5.6.30:

                    ------ Übersetzungslauf gestartet: Applikation: Device.Application -------
                    Code typisieren ...
    [FEHLER]        iodrvprofinet, 3.5.6.30 (3s - smart software solutions gmbh): IoDrvScanModules [IoDrvProfinet]: C0037:  'bufferSize' ist kein Eingang von 'BYTEBUFFER'
    [FEHLER]        iodrvprofinet, 3.5.6.30 (3s - smart software solutions gmbh): IoDrvScanModules [IoDrvProfinet]: C0046:  Bezeichner 'bufferSize' nicht definiert
    [FEHLER]        iodrvprofinet, 3.5.6.30 (3s - smart software solutions gmbh): IoDrvScanModules [IoDrvProfinet]: C0037:  'bufferSize' ist kein Eingang von 'BYTEBUFFER'
    [FEHLER]        iodrvprofinet, 3.5.6.30 (3s - smart software solutions gmbh): IoDrvScanModules [IoDrvProfinet]: C0046:  Bezeichner 'bufferSize' nicht definiert
    [FEHLER]        iodrvprofinet, 3.5.6.30 (3s - smart software solutions gmbh): IoDrvScanModules [IoDrvProfinet]: C0037:  'bufferSize' ist kein Eingang von 'BYTEBUFFER'
    [FEHLER]        iodrvprofinet, 3.5.6.30 (3s - smart software solutions gmbh): IoDrvScanModules [IoDrvProfinet]: C0046:  Bezeichner 'bufferSize' nicht definiert
    [FEHLER]        iodrvprofinet, 3.5.6.30 (3s - smart software solutions gmbh): InitScanConnector [IoDrvProfinet]: C0037:  'bufferSize' ist kein Eingang von 'BYTEBUFFER'
    [FEHLER]        iodrvprofinet, 3.5.6.30 (3s - smart software solutions gmbh): InitScanConnector [IoDrvProfinet]: C0046:  Bezeichner 'bufferSize' nicht definiert
    [FEHLER]        iodrvprofinet, 3.5.6.30 (3s - smart software solutions gmbh): GetModuleIdentNr [IoDrvProfinet]: C0037:  'bufferSize' ist kein Eingang von 'BYTEBUFFER'
    [FEHLER]        iodrvprofinet, 3.5.6.30 (3s - smart software solutions gmbh): GetModuleIdentNr [IoDrvProfinet]: C0046:  Bezeichner 'bufferSize' nicht definiert
    [FEHLER]        iodrvprofinet, 3.5.6.30 (3s - smart software solutions gmbh): StoreAlarmData [IoDrvProfinet]: C0037:  'bufferSize' ist kein Eingang von 'BYTEBUFFER'
    [FEHLER]        iodrvprofinet, 3.5.6.30 (3s - smart software solutions gmbh): StoreAlarmData [IoDrvProfinet]: C0046:  Bezeichner 'bufferSize' nicht definiert
    [FEHLER]        iodrvprofinet, 3.5.6.30 (3s - smart software solutions gmbh): CreateSlaveConfig3 [PNSlave]: C0018:  'slave^.MultipleWriteSupported' ist kein gültiges Zuweisungsziel
    [FEHLER]        iodrvprofinet, 3.5.6.30 (3s - smart software solutions gmbh): CreateSlaveConfig3 [PNSlave]: C0004:  'MultipleWriteSupported' ist keine Komponente von 'SLAVECONFIG'
    [FEHLER]        iodrvprofinet, 3.5.6.30 (3s - smart software solutions gmbh): Start [PN_RDRECImplicit]: C0037:  'bufferSize' ist kein Eingang von 'BYTEBUFFER'
    [FEHLER]        iodrvprofinet, 3.5.6.30 (3s - smart software solutions gmbh): Start [PN_RDRECImplicit]: C0046:  Bezeichner 'bufferSize' nicht definiert
    [FEHLER]        iodrvprofinet, 3.5.6.30 (3s - smart software solutions gmbh): RPC_Read_cnf [PN_RDRECImplicit]: C0037:  'bufferSize' ist kein Eingang von 'BYTEBUFFER'
    [FEHLER]        iodrvprofinet, 3.5.6.30 (3s - smart software solutions gmbh): RPC_Read_cnf [PN_RDRECImplicit]: C0046:  Bezeichner 'bufferSize' nicht definiert
                    Kompilierung abgeschlossen -- 18 Fehler, 0 Warnungen
    

    Nachdem ich im Englischen Teil dieses Forums auf ein Beispielprojekt zum Thema Profinet gestoßen bin, habe ich nach öffnen dieses Projektes und dem Download der alten PN-Controller Beschreibung auch das Projekt fehlerfrei kompilieren können.

    Kann es daher sein das in den Versionen nach SP6 der PN-Controller fehlerhaft ist?
    Ich habe auch versucht den Fehler im Bibliothekcode zu finden, allerdings habe ich sehr lange nichts mehr mit Codesys gemacht und scheinbar ist die Bibliothek auch vorkompiliert sodass die Quelle nicht mehr überprüfbar ist.

    Eine zusätzliche Frage hätte ich noch wegen der Runtime Lizenz, ist es möglich diese auch auf dem Codesys USB Stick gespeichert zu lassen und direkt angesteckt am Raspberry zu betreiben?

    Danke im Voraus!

    Mit freundlichem Gruß

    The-JC

     
  • eschwellinger

    eschwellinger - 2015-04-23

    Hi,
    ja hast recht,
    dazu brauchts einen neue Devdesc des Raspberry PI's oder aber als Workaround könnte man über die Platzhalter die
    Libs in der alten Version anziehen.
    Glaub 1. ist einfacher ich schicks Sie dir.

    Grüße
    Edwin

     
  • The-JC - 2015-04-23

    Danke das wäre super.
    Und wie verhält sich das mit der Runtime Lizenz und dem USB Stick?

    Viele Grüße

    The-JC

     
  • eschwellinger

    eschwellinger - 2015-04-23

    so generell ist die Lizenz absolut versionsunabhängig... die geht immer
    und übersteht auch updates downgrades was auch immer.
    Grüße
    Edwin

     
  • eschwellinger

    eschwellinger - 2015-04-23

    ...

     
  • eschwellinger

    eschwellinger - 2015-04-24

    Hallo,

    ich denke die einfachere Möglichkeit wäre einfach den PC_Controller in V3.5.6.0 zu verwenden.

    Grüße
    Edwin

    IMG: PNControllerVersion.jpg

    IMG: UpdatePNController.jpg

     
  • The-JC - 2015-04-24

    Hallo,

    genau so wie auf dem Screenshot hatte ich das auch schon gemacht, allerdings drängt sich mir die Frage auf wie ich an den älteren Versionsstand komme ohne ein Projekt oder Engineeringsystem in dieser Version!?
    Das Problem hat sich zwar damit erledigt aber bloß für die Zukunft damit man weiß wie ein Versionsdowngrade bei anderen Geräten funktioniert.

    Die Sache mit dem Lizenzstick meinte ich anders, ich meine hier im Forum irgendwo gelesen zu haben das die Pi-Runtime Lizenz in Kombination mit dem "CODESYS Runtime Key, kompakt" portabel wäre, denn sonst wäre die Lizenz nach Aktivierung an die Pi Hardware gebunden.
    Meine Frage war daher ob auch der Raspberry Pi diesen Runtime Key erkennt und richig lizenziert?

    Danke!

    Mit freundlichem Gruß

    The-JC

     
  • eschwellinger

    eschwellinger - 2015-04-24

    Hallo,
    naja solche "downgrades" sind ja normalerweise nie notwendig,
    ist ja in diesem Fall ein "accident" passiert, darum wurde ja auch die 3.5.6.20 aus dem Downloadbereich entfernt
    und ersetzt durch die V3.5.6.30 Version.

    Lizenz:
    Klar du kannst die Pi Lizenz wahlweise auf dem PI als SoftLizenz aktivieren oder aber auf einem
    Runtime Key, dann ist die "portabel" und kann zusätzlich auch noch dein Bootprojekt verschlüsseln so
    das die BootApplikation niemand ohne den Dongle zu haben "klauen" und verwenden kann.
    (Also Know How Schutz)
    Beachten muss man bei der Runtime Key Aktivierung:
    Man steckt den Runtime Key an den Windows PC und aktiviert in dort (nicht am Pi aktivieren)
    klar mit Lizenz muss er dann an den Pi gesteckt werden.

    Grüße
    Edwin

     

Log in to post a comment.