Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 4 von 4

Thema: LibNodave 64bit write error on Linux

  1. #1
    Registriert seit
    23.04.2010
    Beiträge
    2
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hi everybody

    Sorry to post it in english but I don't know german. I was using google translator to read threads visit this forum.

    I found few people here has compiled libnodave on 64bit linux so I have done it the same way.


    I have following problem.
    Writing single byte into plc results in error: "desired address is beyond limit for this PLC" - error number 5

    area = 132
    DB = 99
    start = 0
    len = 1
    *buffer = 0x01 0x00
    res = daveWriteBytes(m_dc, area, DB, start, len, buffer);

    res = 5

    Does any of you encounter that problem? Or I have to figure it out on my own. At the same time reading works perfectly. There is no such problem on windows and linux in 32bit mode.

    My environment:
    libnodave 0.8.4.5
    g++ (Gentoo 4.3.4 p1.1, pie-10.1.5) 4.3.4
    Architecture : Intel Core 2
    binutils - 2.18-r3
    PLC: VIPA CPU315SB
    Comunnication is realised via ethernet cable.
    Makefile:
    CFLAGS = -m64 -Wall -Winline -DLINUX -DDAVE_LITTLE_ENDIAN -fPIC
    CTFLAGS = -m64 -Wall -Winline -fPID -DLINUX -DDAVE_LITTLE_ENDIAN -fPIC
    CPPFLAGS = -m64 -Wall -Winline -DLINUX -DDAVE_LITTLE_ENDIAN -fPIC


    I was trying to debug libnodave ... but I have not much time to understand its internal architecture. I will be also glad for any hints how to fix the bug on my own.

    BTW. To the author of libnodave .... good work very usefull library
    Zitieren Zitieren LibNodave 64bit write error on Linux  

  2. #2
    Registriert seit
    19.06.2008
    Ort
    Ostalbkreis
    Beiträge
    3.140
    Danke
    201
    Erhielt 553 Danke für 498 Beiträge

    Standard

    Hello,

    I found this in the forum.


    CFLAGS=-m64 -Wall -Winline -DLINUX -DDAVE_LITTLE_ENDIAN -fPIC
    CTFLAGS=-m64 -Wall -Winline -fPID -DLINUX -DDAVE_LITTLE_ENDIAN -fPIC
    CPPFLAGS=-m64 -Wall -Winline -DLINUX -DDAVE_LITTLE_ENDIAN -fPIC
    .......
    install: libnodave.so
    cp libnodave.so /usr/lib64

  3. #3
    Registriert seit
    23.04.2010
    Beiträge
    2
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Lächeln

    Thank you for your response.
    Actually, you suggested me something what I already did . Maybe it is not obvious from my previous post (I am not native English) but I managed libnodave to work. The problem is when trying to write data (after successful connection to PLC/SPS) there is an error.

    I can read data on 64 bit linux so libnodave is correctly compiled, installed and linked into my program but I cant write to PLC/SPS.

    I have used make flags you suggested, to compile libnodave.
    By "My environment:" I mean flags and tools used to compile library.
    Dedicated software for automation
    http://www.3electrons.com

  4. #4
    Registriert seit
    04.04.2008
    Beiträge
    389
    Danke
    85
    Erhielt 39 Danke für 24 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hello,

    my code ist VB.Net, without wrapper (libnodave.net.dll).

    First you should control the declaration of your function:
    my declaration is:
    Code:
    Public Declare Function daveWriteBytes Lib "libnodave.dll" (ByVal dc As Integer, ByVal area As Integer, ByVal areaNumber As Integer, ByVal start As Integer, ByVal numBytes As Integer, ByRef buffer As Byte) As Integer
    Integer means 32-Bit-Integer.

    Then:
    Code:
    Dim Buffer(0) as Byte
    res = daveWriteBytes(dc, daveDB, 99, 0, 1, Buffer(0))
    In this example you can write only one Byte.

    Earny

Ähnliche Themen

  1. Libnodave auf 64Bit kompilieren???
    Von trolly70 im Forum Hochsprachen - OPC
    Antworten: 63
    Letzter Beitrag: 04.03.2012, 23:01
  2. Libnodave & SPS Write Protection
    Von hik im Forum Hochsprachen - OPC
    Antworten: 1
    Letzter Beitrag: 07.03.2011, 15:41
  3. libnodave - linux
    Von waschtl im Forum Hochsprachen - OPC
    Antworten: 5
    Letzter Beitrag: 15.12.2010, 17:12
  4. Win7: 32 oder 64bit? ...und wenn 64bit: dann auch eine VM mit 32bit dazu?
    Von Perfektionist im Forum PC- und Netzwerktechnik
    Antworten: 9
    Letzter Beitrag: 29.07.2010, 15:34
  5. LibNodave Write Request von mehrern Var.
    Von Jochen Kühner im Forum Hochsprachen - OPC
    Antworten: 17
    Letzter Beitrag: 07.06.2010, 19:06

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •