Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
667 changes: 321 additions & 346 deletions apax-lock.json

Large diffs are not rendered by default.

10 changes: 5 additions & 5 deletions apax.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,18 +19,18 @@ registries:
'@simatic-ax': 'https://npm.pkg.github.com/'

catalogs:
"@ax/simatic-ax": ^2504.0.0
"@ax/simatic-ax": ^2510.0.0

# Dependencies
devDependencies:
'@ax/sdk': ^2504.0.0
'@ax/sdk': ^2510.0.0
"@simatic-ax/snippetscollection": ^1.1.0
dependencies:
#system packages
"@ax/system-timer": ^10.0.24
"@ax/system-serde": ^10.0.24
"@ax/system-timer": ^10.2.7
"@ax/system-serde": ^10.2.7
#simatic-1500-specific system packages
"@ax/simatic-1500-distributedio": ^10.0.1
"@ax/simatic-distributedio": ^11.0.0
# Project variables
variables:
APAX_BUILD_ARGS:
Expand Down
8 changes: 4 additions & 4 deletions src/blocks/Device.st
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
USING Siemens.Simatic.S71500.DistributedIO;
USING Siemens.Simatic.DistributedIO;
NAMESPACE Simatic.Ax.IOLink

CLASS PUBLIC Device EXTENDS IOLinkBase
Expand Down Expand Up @@ -179,7 +179,7 @@ NAMESPACE Simatic.Ax.IOLink
IF instRdRec.request = FALSE THEN
// call read record with Index 16#B000
instRdRec.request := TRUE;
instRdRec.ID := statHwID;
instRdRec.hardwareID := statHwID;
instRdRec.index := TO_UINT(Cap#INDEX_CAP_IOLINK);
instRdRec.maxLength := UINT#0;
statFBState := StateDevice#FB_STATE_READ_CAP;
Expand Down Expand Up @@ -230,7 +230,7 @@ NAMESPACE Simatic.Ax.IOLink
// send the required data record.

instWrRec(request := TRUE,
ID := statHwID,
hardwareID := statHwID,
index := statCap,
length := statLength,
record := statBuffer);
Expand Down Expand Up @@ -259,7 +259,7 @@ NAMESPACE Simatic.Ax.IOLink

// read data record on falling edge
instRdRec(request := NOT instPoll.output,
ID := statHwID,
hardwareID := statHwID,
index := statCap,
maxLength := UINT#0, // read all data available,
record := statBuffer);
Expand Down
10 changes: 5 additions & 5 deletions src/blocks/Diagnose.st
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
USING Siemens.Simatic.S71500.DistributedIO;
USING Siemens.Simatic.DistributedIO;
NAMESPACE Simatic.Ax.IOLink

CLASS PUBLIC Diagnose EXTENDS IOLinkBase
Expand Down Expand Up @@ -57,7 +57,7 @@ NAMESPACE Simatic.Ax.IOLink
END_IF;

//only allow valid hardware id
IF hwID = WORD#0 THEN
IF hwID = UINT#0 THEN
RETURN;
END_IF;

Expand Down Expand Up @@ -131,7 +131,7 @@ NAMESPACE Simatic.Ax.IOLink
IF instRdRec.request = FALSE THEN
// call read record with Index 16#B000
instRdRec.request := TRUE;
instRdRec.ID := statHwID;
instRdRec.hardwareID := statHwID;
instRdRec.index := TO_UINT(Cap#INDEX_CAP_IOLINK);
instRdRec.maxLength := UINT#0;
statFBState := StateDiagnose#FB_STATE_READ_CAP;
Expand Down Expand Up @@ -181,7 +181,7 @@ NAMESPACE Simatic.Ax.IOLink
IF (instRdDiag.VALID = FALSE) AND (instRdDiag.ERROR = FALSE) THEN
IF instRdDiag.request = FALSE THEN
instRdDiag.request := TRUE;
instRdDiag.ID := statHwID;
instRdDiag.hardwareID := statHwID;
instRdDiag.index := statIndexDiag;
instRdDiag.maxLength := UINT#0;
END_IF;
Expand Down Expand Up @@ -223,7 +223,7 @@ NAMESPACE Simatic.Ax.IOLink
IF (instRdDiag.VALID = FALSE) AND (instRdDiag.ERROR = FALSE) THEN
IF instRdDiag.request = FALSE THEN
instRdDiag.request := TRUE;
instRdDiag.ID := statHwID;
instRdDiag.hardwareID := statHwID;
instRdDiag.index := statIndexDiag;
instRdDiag.maxLength := UINT#0;
END_IF;
Expand Down
38 changes: 19 additions & 19 deletions src/blocks/Master.st
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
USING Siemens.Simatic.S71500.DistributedIO;
USING Siemens.Simatic.DistributedIO;
NAMESPACE Simatic.Ax.IOLink

CLASS PUBLIC Master EXTENDS IOLinkBase
Expand Down Expand Up @@ -96,7 +96,7 @@ NAMESPACE Simatic.Ax.IOLink
RETURN;
END_IF;

IF statHwID = WORD#0 THEN
IF statHwID = UINT#0 THEN
statStatus := Status#ERR_HARDWARE_ID_INVALID;
RETURN;
END_IF;
Expand Down Expand Up @@ -155,11 +155,11 @@ NAMESPACE Simatic.Ax.IOLink

StateMaster#FB_STATE_RESET:

instWrRec(request := true,
ID := statHwID,
index := index,
length := TO_UINT(Lengths#MASTER_HEADER),
record := statBuffer);
instWrRec(request := TRUE,
hardwareID := statHwID,
index := index,
length := TO_UINT(Lengths#MASTER_HEADER),
record := statBuffer);

IF instWrRec.DONE = TRUE THEN
instWrRec(request := FALSE, record := statBuffer); // Reset request
Expand All @@ -183,10 +183,10 @@ NAMESPACE Simatic.Ax.IOLink

StateMaster#FB_STATE_BACKUP:
instRdRec(request := TRUE,
ID := statHwID,
index := index,
maxLength := TO_UINT(Lengths#MASTER_RECORD_SEGMENT_WITH_HEADER),
record := statBuffer);
hardwareID := statHwID,
index := index,
maxLength := TO_UINT(Lengths#MASTER_RECORD_SEGMENT_WITH_HEADER),
record := statBuffer);

// evaluation of RDREC
IF instRdRec.VALID = TRUE THEN
Expand Down Expand Up @@ -241,10 +241,10 @@ NAMESPACE Simatic.Ax.IOLink

// write segment data
instWrRec(request := TRUE,
ID := statHwID,
index := index,
length := TO_UINT(Lengths#MASTER_RECORD_SEGMENT_WITH_HEADER),
record := statBuffer);
hardwareID := statHwID,
index := index,
length := TO_UINT(Lengths#MASTER_RECORD_SEGMENT_WITH_HEADER),
record := statBuffer);

IF instWrRec.DONE = TRUE THEN
statLen := statLen + Lengths#MASTER_RECORD_SEGMENT;
Expand All @@ -261,10 +261,10 @@ NAMESPACE Simatic.Ax.IOLink
StateMaster#FB_STATE_VERIFY: // Verify restore
// REGION verify
instRdRec(request := TRUE,
ID := statHwID,
index := index,
maxLength := TO_UINT(Lengths#MASTER_RECORD_SEGMENT_WITH_HEADER),
record := statBuffer);
hardwareID := statHwID,
index := index,
maxLength := TO_UINT(Lengths#MASTER_RECORD_SEGMENT_WITH_HEADER),
record := statBuffer);

DeserializeBig(offset := UINT#0, value := statRecStruct.backup, buffer := statBuffer);

Expand Down
2 changes: 1 addition & 1 deletion src/blocks/internal/IOLinkBase.st
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
USING Siemens.Simatic.S71500.DistributedIO;
USING Siemens.Simatic.DistributedIO;
NAMESPACE Simatic.Ax.IOLink

CLASS INTERNAL IOLinkBase
Expand Down
4 changes: 2 additions & 2 deletions src/types/types-general.st
Original file line number Diff line number Diff line change
Expand Up @@ -46,8 +46,8 @@ NAMESPACE Simatic.Ax.IOLink
END_TYPE

TYPE
HW_IO : Word (default := WORD#0);
HW_ANY : Word (default := WORD#0);
HW_IO : UINT (default := UINT#0);
HW_ANY : UINT (default := UINT#0);
END_TYPE

END_NAMESPACE