Generation working and Compilation of MARTe components

This commit is contained in:
ferrog
2025-05-13 16:03:11 +00:00
parent 3a5e378d99
commit 4faee3802a
1571 changed files with 611466 additions and 0 deletions

View File

@@ -0,0 +1,5 @@
TOP = ../..
include $(TOP)/configure/CONFIG
ARCH = linux-x86_64
TARGETS = envPaths
include $(TOP)/configure/RULES.ioc

View File

@@ -0,0 +1,25 @@
#======================================================================
# Loading DBs
#======================================================================
cd $(TOP)/db
#======================================================================
# Loading Substitution Files
#======================================================================
cd $(TOP)/iocBoot/$(IOC)
#======================================================================
# PLC Communication Monitoring PVs DB Loading
#======================================================================
cd $(EPICS_ROOT)/db
#======================================================================
# IOC Monitor
#======================================================================
cd $(EPICS_ROOT)/db
#dbLoadRecords("iocmon.db","CBS=EC-GN-SYSM, CTRLTYPE=À)ú, IDX=0, IOCTYPE=CUB, PP=, PPPP=, NNNN=, TTT=")
#- End-of-file marker - do not delete or add lines below!

View File

@@ -0,0 +1,3 @@
epicsEnvSet("IOC","iocEC-GN-PSH0CUB")
epicsEnvSet("TOP","/mnt/ITER/ferrog/MARTe2Project/GIT/ec-gn-ja-pcf/EC-GN-JA-PCF/target/main/epics")
epicsEnvSet("EPICS_BASE","/opt/codac-6.3/epics")

View File

@@ -0,0 +1,8 @@
epicsEnvSet("AUTOSAVE_SYSM_PV_PREFIX", "EC-GN-SYSM:PSH0CUB-")
epicsEnvSet("IOCSH_PS1", "${IOC}> ")
epicsEnvSet("STREAM_PROTOCOL_PATH", "$(TOP)/db:$(EPICS_ROOT)/db")
epicsEnvSet("IPPort_priority","0")
epicsEnvSet("IPPort_noAutoConnect", "0")
epicsEnvSet("IPPort_noProcessEos", "0")
#- End-of-file marker - do not delete or add lines below!

View File

@@ -0,0 +1,9 @@
############################################################################
## User provided environment variables
############################################################################
#epicsEnvSet("EPICS_CA_SERVER_PORT", "5064")
#epicsEnvSet("EPICS_CA_ADDR_LIST", "")
#epicsEnvSet("EPICS_CA_AUTO_ADDR_LIST", "YES")
#- End-of-file marker - do not delete or add lines below!

View File

@@ -0,0 +1,8 @@
############################################################################
## Autosave monitor post setup
############################################################################
cd "${TOP}/iocBoot/$(IOC)"
create_monitor_set(".req",30,"P=$(AUTOSAVE_SYSM_PV_PREFIX)")
#- End-of-file marker - do not delete or add lines below!

View File

@@ -0,0 +1,42 @@
############################################################################
## Save and restore
############################################################################
### save_restore setup
# status-PV prefix
save_restoreSet_status_prefix("$(AUTOSAVE_SYSM_PV_PREFIX)")
# Use status-PV
save_restoreSet_UseStatusPVs(1)
# Debug-output level
save_restoreSet_Debug(0)
# Ok to save/restore save sets with missing values (no CA connection to PV)?
save_restoreSet_IncompleteSetsOk(1)
# Save dated backup files?
save_restoreSet_DatedBackupFiles(1)
# Number of sequenced backup files to write
save_restoreSet_NumSeqFiles(3)
# Time interval between sequenced backups
save_restoreSet_SeqPeriodInSeconds(300)
# specify where save files should be
set_savefile_path("$(EPICS_AUTOSAVE_VAR)/$(UNIT_NAME)")
# specify what save files should be restored. Note these files must be
# in the directory specified in set_savefile_path(), or, if that function
# has not been called, from the directory current when iocInit is invoked
# Save files associated with the request files 'auto-output.req' and
# 'auto-input.req'. These files are the standard way to use autosave
set_pass1_restoreFile(".sav")
# specify directories in which to to search for included request files
set_requestfile_path("./")
dbLoadRecords("$(EPICS_ROOT)/db/save_restoreStatus.db", "P=$(AUTOSAVE_SYSM_PV_PREFIX)")
#- End-of-file marker - do not delete or add lines below!

View File

@@ -0,0 +1,6 @@
############################################################################
## SDD provided PLC or fast controller driver post configuration
############################################################################
#- End-of-file marker - do not delete or add lines below!

View File

@@ -0,0 +1,86 @@
#======================================================================
# PLC(s) driver configuration commands
#======================================================================
# level=-1: no output
# level=0: errors only
# level=1: startup messages
# level=2: + output record processing
# level=3: + input record processing
# level=4: + driver calls
# level=5: + io printout
# be careful using level>1 since many messages may introduce delays
# var s7plcDebug 2
# s7plcConfigure name,IPaddr,port,inSize,outSize,bigEndian,recvTimeout,sendIntervall, configversion
# connects to PLC <name> on address <IPaddr> port <port>
# <inSize> : size of data block PLC -> IOC [bytes]
# <outSize> : size of data block IOC -> PLC [bytes]
# <bigEndian>=1 : motorola format data (MSB first)
# <bigEndian>=0 : intel format data (LSB first)
# <recvInterval> : receive buffer interval [ms] (Default : 50ms)
# <sendIntervall> : time to wait before sending new data to PLC [ms]
# <configversion> : database configuration version
# s7plcConfigureCmd name,IPaddr,port,outSize,bigEndian,sendIntervall
# connects to PLC <name> on address <IPaddr> port <port>
# <outSize> : size of data block IOC -> PLC [bytes]
# <bigEndian>=1 : motorola format data (MSB first)
# <bigEndian>=0 : intel format data (LSB first)
# <sendIntervall> : time to wait before sending new data to PLC [ms]
#============================================================================
# s7plc asyn driver configuration commands
#============================================================================
#============================================================================
# NI-6259 DAQ I/O Module driver configuration commands
#============================================================================
# Reference: ITER_D_3DEY52 v1.3 - NI PXI-6259 EPICS Driver Users Guide
# For analogue input, analogue output, waveform, initialize using below function
# pxi6259_ai_init(uint8 cardnumber, uint32 range, uint32 clk_source, uint32 clk_edge);
# Example: pxi6259_ai_init(0, 1, 0, 0)
# For binary input, binary output, multi-bit binary input, multi bit binary output, initialize using below function
# pxi6259init(uint8 cardnumber, uint32 portmask0, uint8 portmask1, uint8 portmask2);
# Example: pxi6259_bio_init(0, 0xFF000000, 0xFF, 0xFF)
#============================================================================
# NI-6682 Timing and Synchronization I/O Module driver configuration commands
#============================================================================
# Reference ITER_D_33Q5TX v1.7 - NI Sync EPICS Driver Users Guide
# nisyncDrvInit(string port, char* type, int cardNumber);
# Example: nisyncDrvInit("S0", "PXI-6682", "0");
# Example: nisyncDrvInit("S0", "PXI-6683H", "0");
# nisyncTimeInit(int cardID, char* type, int cardNumber);
# Example: nisyncTimeInit("0", "PXI-6682", "0")
# Example: nisyncTimeInit("0", "PXI-6683H", "0")
#============================================================================================
# NI-6368 X Series - Multifunction Data Acquisition I/O Module driver configuration commands
#============================================================================================
# Reference ITER_D_3P4N3R v1.2 - NI X Series EPICS Driver Users Guide
# nixseriesInit(char *portName, char *nix6368Card);
# Example: nixseriesInit("ni6368_0", "/dev/ni6368.0");
#============================================================================
# NI-6528 DAQ I/O Module driver configuration commands
#============================================================================
# Reference ITER_D_433VEW - NI PXI-6528 EPICS Driver User's Manual
# ni6528_init(char *portName, char *ni6528Card);
# Example: pxi6528_init("ni6528_0", "/dev/ni6528.0")
# asynSetTraceMask("<port name>",0,255)
# Example: asynSetTraceMask("pxi6528_0",0,255)
# pxi6528_reset(char *portName)
# Example: pxi6528_reset("pxi6528_0")
#- End-of-file marker - do not delete or add lines below!

View File

@@ -0,0 +1,6 @@
############################################################################
## SDD provided sequence programs to load
############################################################################
#- End-of-file marker - do not delete or add lines below!

View File

@@ -0,0 +1,8 @@
############################################################################
## Sequence programs to load
############################################################################
## Start any sequence programs
#seq sncxxx,"user=codac-devHost"
#- End-of-file marker - do not delete or add lines below!

View File

@@ -0,0 +1,67 @@
#!../../bin/linux-x86_64/EC-GN
#+======================================================================
# $HeadURL: https://svnpub.codac.iter.org/codac/iter/codac/dev/units/m-epics-iter-templates/branches/codac-core-6.1/templates/genericBoot/ioc/st.cmd $
# $Id: st.cmd 96475 2019-01-09 13:47:38Z sivecm $
#
# Project : CODAC Core System
#
# Description : ITER ioc template EPICS start up file
#
# Author(s) : This file was generated by CODAC development toolkit
#
# Copyright (c) : 2010-2019 ITER Organization,
# CS 90 046
# 13067 St. Paul-lez-Durance Cedex
# France
#
# This file is part of ITER CODAC software.
# For the terms and conditions of redistribution or use of this software
# refer to the file ITER-LICENSE.TXT located in the top level directory
# of the distribution package.
#
#-======================================================================
< envPaths
< envSystem
< envUser
cd "${TOP}"
############################################################################
## Register all support components
############################################################################
dbLoadDatabase "dbd/CUB.dbd"
EC_GN_registerRecordDeviceDriver pdbbase
< "${TOP}/iocBoot/iocEC-GN-PSH0CUB/sddPreDriverConf.cmd"
< "${TOP}/iocBoot/iocEC-GN-PSH0CUB/userPreDriverConf.cmd"
< "${TOP}/iocBoot/iocEC-GN-PSH0CUB/threadSchedulingConf.cmd"
< "${TOP}/iocBoot/iocEC-GN-PSH0CUB/dbToLoad.cmd"
< "${TOP}/iocBoot/iocEC-GN-PSH0CUB/iocEC-GN-PSH0CUB-preSaveRestore.cmd"
############################################################################
## IOC Logging
############################################################################
iocLogInit
iocLogPrefix "${STY} : "
############################################################################
## IOC initialization
############################################################################
cd "${TOP}/db"
iocInit
< "${TOP}/iocBoot/iocEC-GN-PSH0CUB/iocEC-GN-PSH0CUB-postSaveRestore.cmd"
< "${TOP}/iocBoot/iocEC-GN-PSH0CUB/sddSeqToLoad.cmd"
< "${TOP}/iocBoot/iocEC-GN-PSH0CUB/seqToLoad.cmd"
< "${TOP}/iocBoot/iocEC-GN-PSH0CUB/sddPostDriverConf.cmd"
< "${TOP}/iocBoot/iocEC-GN-PSH0CUB/userPostDriverConf.cmd"
dbl > "${CODAC_VAR}/iocdump/${UNIT_NAME}/${IOC_NAME}-${IOC_BOOT_TIME}.dbl"
dbla > "${CODAC_VAR}/iocdump/${UNIT_NAME}/${IOC_NAME}-${IOC_BOOT_TIME}.dbla"
dbior > "${CODAC_VAR}/iocdump/${UNIT_NAME}/${IOC_NAME}-${IOC_BOOT_TIME}.dbior"
dbhcr > "${CODAC_VAR}/iocdump/${UNIT_NAME}/${IOC_NAME}-${IOC_BOOT_TIME}.dbhcr"
#- End-of-file marker - do not delete or add lines below!

View File

@@ -0,0 +1,6 @@
############################################################################
## Thread scheduling configuration for real-time tuning
############################################################################
#- End-of-file marker - do not delete or add lines below!

View File

@@ -0,0 +1,6 @@
############################################################################
## User provided PLC or fast controller driver post configuration
############################################################################
#- End-of-file marker - do not delete or add lines below!

View File

@@ -0,0 +1,12 @@
############################################################################
## User provided PLC or fast controller driver pre configuration
############################################################################
# Enable parallel callback threads to improve 'I/O Intr' record scanning
# see https://bugzilla.iter.org/codac/show_bug.cgi?id=10413
callbackParallelThreads
callbackSetQueueSize(100000)
scanOnceSetQueueSize(100000)
#- End-of-file marker - do not delete or add lines below!