Understanding of numbers in IOSYS.INI

  • Place your Ad here!
  • Master.ldb is a default ldb file of the Kuka system. Did you rename the ldb in your NCM project to master.ldb?

    It is better to post ascii files than screenshots of the file (pfbms.ini, iosys.ini.

    You told me earlier try the system without this: example: INT30=3,0,x1. The system worked perfectly(Red light up continuously) If i typed this into the system throw back the error.

    Ah, yes that's true. But you said "everything worked", that's not true, because the connection to the HMI didn't work really, you only had no errors.

    So I think you haven't integrated your pb slave, you have to use correct ldb file.

  • We rename it to kuka1.ldb, but the Kuka windows automatically copy the file into the krc system with master(.ldb) name. Yes you are right i just didn't have errors, but the profibus master slave button didn't light red :frowning_face: i Can't attache my files.... the site says "invalid file extension". I tried to attached it as rar.. but the site says the same....
    Any solution? :frowning_face:


    The only solution is if i copy the whole text here... :thinking_face:

    IOSYS.INI:


    ;==========================================================

    ; IOSYS.INI - Configuration file for the IO-System

    ;==========================================================

    ; For configuration help go to the end of this file.

    ;----------------------------------------------------------


    ; ATTENTION !!!! Since V5.0 Build13 we have removed the DeviceNet

    ; driver "dndrv.o". Now you have to use the driver

    ; "dn2drv.o" and the appropriate syntax (form 2)


    [CONFIG]

    VERSION=2.00



    [DRIVERS]

    ;CNKE2=21,cnke2CPInit,cnke2drv.o

    ;DNSC6=20,dnsc6Init,dnsc6drv.o

    ;DNSC5=19,dnsc5Init,dnsc5drv.o

    ;DNSC4=18,dnsc4Init,dnsc4drv.o

    ;DNSC3=17,dnsc3Init,dnsc3drv.o

    ;CNKE1=16,cnke1CPInit,cnke1drv.o

    ;INTERBUSPCI=15,ibsCPPciInit,ibpcidrv.o

    ;DSEIO=14,dseIoInit,dseiodrv.o

    ;DNSC2=13,dnsc2Init,dnsc2drv.o

    ;DNSC1=12,dnsc1Init,dnsc1drv.o

    PBMASL=11,pbmsInit,pfbmsdrv.o

    ;DEVNET=2,dnInit,dn2drv.o

    ;INTERBUS=1,ibusInit,ibusdrv.o

    ;MFC=0,mfcEntry,mfcdrv.o


    [BOSCH]

    ;------- Inputs ---------

    INW64=0 ;$IN[513-528]

    ;------- Outputs --------

    OUTW64=0 ;$OUT[513-528]

    OUTW66=2 ;$OUT[529-544]


    [MFC]

    INW0=0 ;$IN[1-16]

    OUTW0=0 ;$OUT[1-16]

    OUTW2=2 ;$OUT[17-32]



    [INTERBUS]

    ;------- Inputs ---------

    ;Slave Inputs

    INW50=896 ;$IN[401-416]

    INW52=898 ;$IN[417-432]

    INW54=900 ;$IN[433-448]

    INW56=902 ;$IN[449-464]

    ;------- Outputs --------

    ;Slave Outputs

    OUTW50=896 ;$OUT[401-416]

    OUTW52=898 ;$OUT[417-432]

    OUTW54=900 ;$OUT[433-448]

    OUTW56=902 ;$OUT[449-464]



    [DEVNET]



    [PBMASL]



    [DNSC1]



    [DNSC2]



    [DNSC3]



    [DNSC4]



    [DNSC5]



    [DNSC6]



    [DSEIO]

    INDW0=0 ;$IN[1-32]

    OUTDW0=0 ;$OUT[1-32]



    [INTERBUSPCI]

    ;------- Inputs ---------

    ;Slave Inputs

    INW50=896 ;$IN[401-416]

    INW52=898 ;$IN[417-432]

    INW54=900 ;$IN[433-448]

    INW56=902 ;$IN[449-464]

    ;------- Outputs --------

    ;Slave Outputs

    OUTW50=896 ;$OUT[401-416]

    OUTW52=898 ;$OUT[417-432]

    OUTW54=900 ;$OUT[433-448]

    OUTW56=902 ;$OUT[449-464]



    [CNKE1]

    ; =ConNo, additional offset,xSize


    [CNKE2]

    ; =ConNo, additional offset,xSize


    [VIO]

    ;INW0=0 ;$IN[1-16]

    ;INW8=2 ;$IN[65-80]

    ;OUTW0=0 ;$OUT[1-16]

    ;OUTW2=2 ;$OUT[17-32]


    [O2I]

    ;INW4=0 ;$IN[33-48]

    ;INW6=2 ;$IN[49-64]

    ;OUTW4=0 ;$OUT[33-48]

    ;OUTW6=2 ;$OUT[49-64]



    [IOLINKING]



    [END SECTION]


    ;==========================================================

    ;Valid entries have the following formats.

    ;Arguments in squared brackets are optional.

    ;If nothing else is mentioned, arguments are decimal.


    ;Digital Inputs and Outputs:

    ;

    ; Form 1:

    ; {token}{offset}={byte}[,{multip}]

    ;

    ; {token} INB (byte), INW (word), INDW (double word)

    ; OUTB, OUTW, OUTDW

    ; {offset} byte offset of robot IO System (0..m)

    ; {byte} byte offset over all peripheral devices (0..m)

    ; Offset starts with 0 at the first device and

    ; ends with m at the end of the last device.

    ; {multip} creats n dataobjects of {token}

    ; Example:

    ; OUTW4=2,x3

    ; Three words of the periphery, starting at byte 2,

    ; are mapped to the outputs 33-80.

    ;

    ; Form 2:

    ; {token}{offset}={address},{byte}[,{multip}]

    ;

    ; {token} INB, INW, INDW, OUTB, OUTW, OUTDW

    ; {offset} byte offset of robot IO System

    ; {address} address of a peripheral device (0..m)

    ; driver specific information, see descr. below

    ; {byte} byte offset at this peripheral device (0..m)

    ; Offset starts with 0 at the every device

    ; driver specific information, see descr. below

    ; {multip} creats n dataobjects of {token}

    ; Example:

    ; INW4=10,0,x2

    ; Two words of the peripheral device with address 10 and

    ; up from byte 0 are mapped to the inputs 33-80.



    ;Analog Inputs and Outputs:

    ;

    ; Form 1:

    ; {token}{num}={byte},{res},{type}[,CAL{factor}]

    ;

    ; {token} ANIN or ANOUT

    ; {num} number of the analog channel (1..i)

    ; {byte} byte offset over all peripheral devices (0..m)

    ; Offset starts with 0 at the first device and

    ; ends with m at the end of the last device.

    ; {res} resolution of the analog value (number of bits)

    ; {type} type of analog value

    ; 0 : right justified without sign

    ; 1 : right justified with sign

    ; 2 : left justified without sign

    ; 3 : left justified with sign

    ; {factor} maximum analog value, decimal without prefix,

    ; hexadec. with prefix 0x or octal with prefix 0

    ; "CAL 0" or no entry sets factor to its maximum

    ; Example:

    ; ANIN1=10,12,3

    ; The analog input No.1 is used. The byte offset on

    ; peripheral side is 10, the resolution is 12 bit and the

    ; type of analog value is 3 (left justified with sign).

    ; The maximum binary analog value is 2047.

    ;

    ; Form 2:

    ; {token}{num}={address},{byte},{res},{type}[,CAL{factor}]

    ;

    ; {token} ANIN or ANOUT

    ; {num} number of the analog channel (1..i)

    ; {address} address of a peripheral device (0..m)

    ; driver specific information, see descr. below

    ; {byte} byte offset at this peripheral device (0..m)

    ; Offset starts with 0 at the every device

    ; driver specific information, see descr. below

    ; {res} resolution of the analog value (number of bits)

    ; {type} type of analog value

    ; 0 : right justified without sign

    ; 1 : right justified with sign

    ; 2 : left justified without sign

    ; 3 : left justified with sign

    ; {factor} maximum analog value, decimal without prefix,

    ; hexadec. with prefix 0x or octal with prefix 0

    ; "CAL 0" or no entry sets factor to its maximum

    ; Example:

    ; ANIN3=30,0,16,2,CAL 0x6C00

    ; The analog input No.3 is used. The device address is 30,

    ; the byte offset at this device is 0, the resolution is

    ; 16 bit and the type of analog value is 2 (left justified

    ; without sign). The maximum binary analog value is 27648.

    ; The CAL-factor is especially required in case of using

    ; Profibus analog modules.



    ;particularities:

    ;[MFC] MFC-IO with KRC1 / CAN-IO-Modul with KRC2

    ; Entries in form 1

    ;

    ;[INTERBUS/INTERBUSPCI] Interbus Phoenix Mast./Slave Cu/LWL

    ; Entries in form 1

    ; $IN/OUT[n_1]=(n+1)*8-7

    ; $IN/OUT[n_8]=(n+1)*8


    ;[DEVNET] DeviceNet on the KUKA MFC

    ; Entries in form 2 for driver dn2drv.o

    ; {address}=DeviceNet MACID


    ;[DNSC1] DeviceNet LPDN scanner channel 1

    ; Entries in form 2

    ; {address} = DeviceNet slave MACID

    ; {address} = MACID of CH1 ==> Slave part of LPDN CH1

    ;

    ;[DNSC2] DeviceNet LPDN scanner channel 2

    ; Entries in form 2

    ; {address} = DeviceNet slave MACID

    ; {address} = MACID of CH2 ==> Slave part of LPDN CH2

    ;

    ;[DNSC3] DeviceNet LPDN scanner channel 1

    ; Entries in form 2

    ; {address} = DeviceNet slave MACID

    ; {address} = MACID of CH1 ==> Slave part of LPDN CH1

    ;

    ;[DNSC4] DeviceNet LPDN scanner channel 2

    ; Entries in form 2

    ; {address} = DeviceNet slave MACID

    ; {address} = MACID of CH2 ==> Slave part of LPDN CH2

    ;

    ;[DNSC5] DeviceNet LPDN scanner channel 1

    ; Entries in form 2

    ; {address} = DeviceNet slave MACID

    ; {address} = MACID of CH1 ==> Slave part of LPDN CH1

    ;

    ;[DNSC6] DeviceNet LPDN scanner channel 2

    ; Entries in form 2

    ; {address} = DeviceNet slave MACID

    ; {address} = MACID of CH2 ==> Slave part of LPDN CH2

    ;

    ;[PBMASL] ProfiBus Siemens Master/Slave CP5614

    ; Entries in form 2

    ; {address} = Slave DP-address

    ; {address} = 127 ==> Slave part of CP5614

    ;

    ;[DSEIO] Digital inputs/outputs for KR C3A

    ; Entries in form 1

    ;

    ;[CNKE1] ControlNet 1784PCIC LP-Elektronik

    ; Entries in form 2

    ; {address} = ConNo

    ; {byte} = additional offset

    ;

    ;[CNKE2] ControlNet 1784PCIC LP-Elektronik

    ; Entries in form 2

    ; {address} = ConNo

    ; {byte} = additional offset

    ;

    ;[VIO] inputs/outputs for Virtual IO driver over TCP/IP

    ; Entries in form 1

    ;

    ;VIO=30,vioInit,vio_drv.o

    ;

    ;[O2I] inputs/outputs for 'output to input for software developers'

    ; Entries in form 1

    ;

    ;O2I=31,o2iInit,o2i_drv.o

    ;

    ;[IOLINKING] Outputs follow inputs

    ; Special form:

    ; $OUT[{bitoffset}]=$IN[{bitoffset}]

    ;

    ; {bitoffset} Bit(!)offset in the robot I/O-System,

    ; starting with 1 (1..MAXIO)

    ;

    ; Example: $OUT[512]=$IN[401]

    ; In this case output nr. 512 (bit 8 of byte 63)

    ; is linked to input nr. 401 (bit 1 of byte 50)

    ;

    ; Notes:

    ; IOLINKING means outputs follow inputs in the robot

    ; I/O-system (within ipo-cycle), regardless if they

    ; are mapped to drivers.

    ; Port ranges cannot be specified, each bit must be

    ; linked by itself.

    ; Only a maximum of MAX_IOLINKS can be configured (set

    ; in progress.ini, if this value is increased, robot

    ; functionality cannot be guaranteed!).

    ;----------------------------------------------------------

    ; 04/02/02 section [IOLINKING] added

  • PFBMS.INI:


    ;-----------------------------------------------------------------------------------------------------------

    ; [CP_5613/14] general section for master and slavemodul

    ;

    ; DEBUG=0 : no printings on Telnet-shell (default: DEBUG=0)

    ; DEBUG=1 : printings are enabled

    ;

    ; LOGFILE_PATH=__/__ : if this entry is used, a logfile will be created

    ; at the projected path

    ;

    ; ERROR_TEXT=German : Siemens specific error messages in German

    ; ERROR_TEXT=English : Siemens specific error messages in English

    ; FORCE_RESET=0 : Reset the Master or the Slave only if there is really a bus error.

    ; FORCE_RESET=1 : Reset the Master and the Slave in any case.

    ; OLD_ERROR_DB=0 : Each error detection routine uses its own message.

    ; New drivers can cause system errors if used on older KRC systems.

    ; OLD_ERROR_DB=1 : Error detection routines use standard messages.

    ; New drivers are comaptible to older KRC systems.

    ;

    ;-----------------------------------------------------------------------------------------------------------


    [CP_5613/14]

    DEBUG=1

    LOGFILE_PATH=log/pfbms.log

    ERROR_TEXT=German

    FORCE_RESET=0

    OLD_ERROR_DB=0


    ;-----------------------------------------------------------------------------------------------------------

    ; [MASTER] section for master

    ;

    ; MASTER_USED=1 : Master will be started

    ; MASTER_USED=0 : Master will not be started

    ;

    ; DATABASE_PATH=__/__ : path of database file, generated from configuration program

    ; (Siemens AG), e.g. "COM Profibus"

    ;

    ; FIRMWARE_PATH_A1=__/__ : path of the location of the A1-firmware file

    ; FIRMWARE_PATH_A2=__/__ : path of the location of the A2-firmware file

    ;

    ; WATCHDOG_TIME=0 : Watchdog deactivated

    ; WATCHDOG_TIME= : (1 to 65534) * 10 ms

    ;

    ; MAPPING_USED=0 : mapping functionality disabled

    ; MAPPING_USED=1 : mapping functionality enabled

    ;

    ; MAPPING_PATH=__/__ : path of the mapping table file, generated from

    ; "Transfer5614-Configuration" program (Siemens AG)

    ;

    ; DEACTIVATED_SLAVES=Modul_Address_X,Modul_Address_Y : Slaves which should be ignored at the start of the KRC,

    ; if they are not connected to the bus.

    ; This is needed for Slaves, which are in the database,

    ; projected in the IOSYS.INI, but not currently connected

    ; to the bus.

    ; Usefull for changing Slaves during the running KRC.

    ;WAIT_FOR_SLAVES=1 : Master waits until all Slaves Moduls are in state READY before he goes in state

    ; OPERATE (default).

    ;WAIT_FOR_SLAVES=0 : Master goes in state OPERATE without waiting for the Slave Moduls.

    ;-----------------------------------------------------------------------------------------------------------


    [MASTER]

    MASTER_USED=1

    DATABASE_PATH=init/master.ldb

    FIRMWARE_PATH_A1=drivers/FW_5613.bin

    FIRMWARE_PATH_A2=drivers/FW5613A2.bin

    WATCHDOG_TIME=3

    MAPPING_USED=0

    MAPPING_PATH=init/

    ;DEACTIVATED_SLAVES=1

    WAIT_FOR_SLAVES=0


    ;-----------------------------------------------------------------------------------------------------------

    ; [SLAVE] section for Slave

    ;

    ; MODUL_USED=0 : Slavemodul will not be started

    ; MODUL_USED=1 : Slavemodul will be started

    ;

    ; START_TIME= >= 20 : The Slavemodul have to be in the DATA_EXCHANGE mode to

    ; compare the configuration data with the entries in the

    ; file IOSYS.INI. This time makes it shure.

    ;

    ; MODUL_ADDRESS=X : DP address of slavemodul, have to be the same as projected

    ; in the PB-Net.

    ;

    ; ERROR_ACTION=1 : The KRC1 will stop if the master of the slavemodul is in the

    ; state "CLEAR".

    ;

    ; ERROR_ACTION=0 : The KRC1 will not stop if the master of the slavemodul is in the

    ; state "CLEAR".

    ;

    ; STANDBY=0 : Standby mode: OFF (default)

    ; The slave needs a master while boot up. Otherwise the driver fails

    ; A driver reload necessary to start it again

    ;

    ; STANDBY=1 : Standby mode: ON

    ; The slave will stay in standby mode until a master allocates it

    ;

    ; SLAVE_TIMEOUT=0 : Slave timer : OFF (default)

    ; state changes of slave module are not checked

    ;

    ; SLAVE_TIMEOUT= : Slave timer : ON

    ; max. value of counter for cyclic slave state changes.

    ; If counter value is reached the driver is unloaded.

    ;

    ; CHECK_CONFIGURATION_DATA=0 : configuration data from the master

    ; to the slavemodul will not be checked

    ;

    ; CHECK_CONFIGURATION_DATA=1 : configuration data from the master

    ; to the slavemodul will be checked

    ;

    ; ACCEPTABLE_INPUT_LENGTH=X : max length of input data allowed for the slavemodul.

    ; if the slavemodul is seperated in several modules:

    ; max length of input data allowed for the moduls of the

    ; slavemodul

    ;

    ; ACCEPTABLE_OUTPUT_LENGTH=X : max length of output data allowed for the slavemodul.

    ; if the slavemodul is seperated in several modules:

    ; max length of output data allowed for the moduls of the

    ; slavemodul

    ;

    ;

    ; IO_DATA_BASE=0 : database is byte

    ; IO_DATA_BASE=1 : database is word

    ;

    ; CONSISTENCE=0 : data consistence is not guaranteed

    ; CONSISTENCE=1 : data consistence is guaranteed

    ;

    ;-----------------------------------------------------------------------------------------------------------


    [SLAVE]

    MODUL_USED=0

    MODUL_ADDRESS=3

    START_TIME=60

    ERROR_ACTION=1

    STANDBY=0

    SLAVE_TIMEOUT=0

    CHECK_CONFIGURATION_DATA=0

    ACCEPTABLE_INPUT_LENGTH=244

    ACCEPTABLE_OUTPUT_LENGTH=244

    IO_DATA_BASE=0

    CONSISTENCE=0


    ;-----------------------------------------------------------------------------------------------------------

    ; [SWAP] section for swapping high- and lowbyte, needed by some moduls (e.g. analog)

    ; - each slave has its own entry

    ; - example: INWORD_SLAVE_2=0,4

    ; INWORD_SLAVE_3=2

    ; OUTWORD_SLAVE_3=2

    ;

    ; INWORD_SLAVE_X=a : INWORD means, the data are read by the KRC1 from the slave

    ; : X is the DP Address of the slave

    ; : a is the offset of the word, which should be swapped.

    ; : if there are more then one word to swap within the same

    ; : slave, seperate the offsets with a comma

    ; : example: INWORD_SLAVE_5=2,8

    ;

    ; OUTWORD_SLAVE_X=a : OUTWORD means, the data are written by the KRC1 to the slave

    ; : X is the DP Address of the slave

    ; : a is the offset of the word, which should be swapped.

    ; : if there are more then one word to swap within the same

    ; : slave, seperate the offsets with a comma

    ; : example: OUTWORD_SLAVE_7=0,4

    ;

    ;-----------------------------------------------------------------------------------------------------------


    [SWAP]

  • Do you really use the correct .gsd-File from Turck?


    .zip works well.

    Yes i did. They forget to upload the gsd file to their website, therefore we write for the support and they send us the gsd file directly.


    Ohh yes maybe... i forgot to try it.. Thanks!

  • please also attach the .gsd from Turck.


    .ldb-files are not readable with an editor nor the simatic Software. For checking your Project, you habe to save the complete project in ncm-manager.


    To change path and name of generated .ldb-File.


  • please also attach the .gsd from Turck.

    I attached the gsd file :smiling_face:



    .ldb-files are not readable with an editor nor the simatic Software. For checking your Project, you habe to save the complete project in ncm-manager.


    To change path and name of generated .ldb-File.

    Yes i did this in ncm manager platform. i think i didn't have to change the path, because the default direction is the correct direction. I just changed the name to kuka1.ldb. Tomorrow i will try to change the default master.ldb name to kuka1.ldb in KRC system. :smiling_face:

  • I doubt that.

    Try to copy your kuka1.ldb to INI folder, and change the name master.ldb in pfbms.ini to kuka1.ldb.

    So, i did it again. Now it looks good. Reconfig NCM PC Manager with kuka1.ldb. I change name in pfbms.ini (master.ldb->kuka1.ldb).Perfect. Reconfig the system and the Profibus-Master-Slave lamp was red. Everything looked good again.


    Then as SkyeFire advice me i typed in this code:


    INB0=3,0 ; $IN[1]-$IN[8]

    After i typed this into the iosys.ini -> save-> reconfig -> and error....CP561DRV


    I attached everything what i did in the system.

    I have no idea what i am doing wrong... :frowning_face:

  • For the last time:

    Don't post screenshots of files like pfbms.ini, iosys.ini. Post the files.

    If You post screenshots, use f.e. irfanview to make the filesize smaller before posting.


    After reconfiguring post the files iosys.log and pfbms.log (don't post screenshots!, post the files).

  • Well, fine thanks. May i ask why is it important? I posted the files earlier, and now i changed only 1 value(master.ldb to kuka1.ldb). That's why i post screenshot instead of files. :thinking_face:
    Tomorrow i will send the log files. Thanks for your help and patience!

  • text files are easier to manipulate (search, copy, paste) than text that is in a screenshot. people trying to help you, value their own time and if you want their help, it would be good idea to comply, don't make it harder than it need to be...

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

  • Of course, i didn't want to argue. I just wanted to understand why is it better. It's much easier for me too if i just copy those files and then paste here. Sorry, I thought it is better to send the source of the exact error. :frowning_face:

    Edited once, last by Mate_271 ().

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account
Sign up for a new account in our community. It's easy!
Register a new account
Sign in
Already have an account? Sign in here.
Sign in Now

Advertising from our partners