Changing PiFace projects or runtime systems for Raspberry Pi to use the generice IO provider
The access to hardware IOs of a →PiFace is possible by using a generic IO provider concept of logi.CAD 3. This article informs whether and which steps are necessary for this access.
Recommended: Using the project template for PiFace in logi.CAD 3 version ≥ 1.121.0 and logi.RTS version ≥ 3.32.0
You do not have to do anything. Reasons:
The PLC-object raspberry of the project that has been created based on a project template for PiFace, e.g. Turn LEDs on/off (PiFace required), using logi.CAD 3 version ≥ 1.121.0 already contains the needed code.
logi.RTS for Raspberry Pi, ≥ version 3.32.0 is already correctly configured.
Using other projects
If you want to use other projects (e.g. projects that have been created by using a logi.CAD 3 version 1.120.0), the following specification for IO_IMPORT is required within the PLC-object:
{ IO_IMPORT PROVIDER := GenericProvider, SERVICE := PiFace }
CONFIGURATION RaspbianConfiguration
RESOURCE raspberry ON Raspbian { ON_CHANNEL := RaspberryChannel }
{ IO_IMPORT PROVIDER := GenericProvider, SERVICE := PiFace }
VAR_GLOBAL
DigitalIn1 AT %IX1.0.0 : BOOL;
(* ... and more declarations of global variables ... *)
END_VAR
{IO} TASK DefaultTask(INTERVAL := TIME#500ms, PRIORITY := 38229);
PROGRAM LEDInstance WITH DefaultTask :
LED;
END_RESOURCE
END_CONFIGURATION
Using logi.RTS configuration file from a previous logi.RTS version
It is indispensable to use logi.RTS for Raspberry Pi, ≥ version 3.31.0!
If you want to go on using the logi.RTS configuration file of a previous logi.RTS version, you have to change this file.
If logi.RTS is running, terminate logi.RTS.
Copy the configuration file /opt/RTS/PLC/RTSIO.cfg of the previous logi.RTS version into the installation directory of the current logi.RTS version.
Open the file /opt/RTS/PLC/RTSIO.cfg in a text editor.
Search for the following lines:
Existing linesAddSymbol IOSS.DeviceNum 1
AddSymbol IOSS.Name[0] RTSS_PIFACE_IO
AddSymbol IOSS.SSId[0] 536870978
AddSymbol IOSS.DeviceId[0] 1
AddSymbol IOSS.IB[0] 4096
AddSymbol IOSS.OB[0] 4096
AddSymbol IOSS.MB[0] 0
LoadLibrary RTSS_IO
LoadLibrary RTSS_PIFACE_IO
Delete the lines incl. line LoadLibrary RTSS_IO.
Hence, the following line remains out of the above line block within the file:Remaining lineLoadLibrary RTSS_PIFACE_IO
Save the changes and exit the editor.
Restart logi.RTS.