diff --git a/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/.marte_schema.cue b/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/.marte_schema.cue new file mode 100644 index 0000000..f088f15 --- /dev/null +++ b/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/.marte_schema.cue @@ -0,0 +1,121 @@ +package schema + +#Classes: { + ExtractBitGAM: {...} + CompactBitGAM: {...} + HttpService: { + Port!: uint & >1024 & <49151 + WebRoot?: string + Timeout?: uint + ListenMaxConnection?: uint + AcceptTimeout?: uint + MaxNumberOfThreads?: uint + MinNumberOfThreads?: uint + } + + HttpObjectBrowser: { + Root!: string + ... + } + HttpDataMonitor: { + ... + } + HttpObjectBrowser: { + Root!: string + } + HttpDirectoryResource: { + BaseDir: string + } + HttpMessageInterface: { + ... + } + NI6528: { + ... + } + ConfigurationDatabase: { + ... + } + JAWFRecordGAM: { + Directory!: string + ... + } + JAPreProgrammedGAM: { + Directory!: string + PreProgrammedPeriodMs!: uint32 + ... + } + JAConditionalSignalUpdateGAM: { + Operation!: "AND" | "OR" | "XOR" | "NOR" + InputSignals: { + [_]: { + Comparator!: "EQUALS" | "GREATER" | "LESSER" + Value!: number + Type!: string + ... + } + } + OutputSignals: { + [_]: { + DefaultValue!: uint32 + Value!: uint32 + Type!: string + ... + } + } + ... + } + JASourceChoiceGAM: { + ... + } + JAMessageGAM: { + Operation!: "AND" | "OR" + InputSignals: { + [_]: { + Value!: number + Comparator!: "EQUALS" | "GREATER" | "LESS" | "EQUALS_OR_GREATER" | "EQUALS_OR_LESS" | "NOT" + Type!: string + ... + } + } + Event!: { + Class: "Message" + Destination!: string + Function!: string + } + ... + } + JAModeControlGAM: { + ... + } + JARTStateMachineGAM: { + ConditionTrigger: 0 | 1 + mhvps_hvon: uint + aps_hvon: uint + aps_swon: uint + bps_hvon: uint + bps_swon: uint + ... + } + JASDNRTStateMachineGAM: { + ConditionTrigger: 0 | 1 + mhvps_hvon: uint + aps_hvon: uint + aps_swon: uint + bps_hvon: uint + bps_swon: uint + ... + } + DANSource: { + ... + } + JATriangleWaveGAM: { + ... + } + JARampupGAM: { + ... + } + NI6683H: { + BoardId: uint + ... + } +} diff --git a/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread4/adc_2_dan.marte b/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread4/adc_2_dan.marte index 521a9b3..3b1776d 100644 --- a/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread4/adc_2_dan.marte +++ b/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread4/adc_2_dan.marte @@ -130,10 +130,10 @@ } +FastAnalogDAN = { Class = "DAN::DANSource" - NumberOfBuffers = 1000 + NumberOfBuffers = 10000 CPUMask = @cpus_adc StackSize = 10000000 - DanBufferMultiplier = 4 + DanBufferMultiplier = 10000 //10s at 1kHz loop (1M with 1k samples) StoreOnTrigger = 1 ICProgName = @app_name NumberOfPreTriggers = 0 diff --git a/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread5/dio_dan_writer.marte b/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread5/dio_dan_writer.marte index 724c70d..1798d87 100644 --- a/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread5/dio_dan_writer.marte +++ b/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/thread5/dio_dan_writer.marte @@ -8,7 +8,7 @@ NumberOfBuffers = 1000 CPUMask = @cpus_dio StackSize = 10000000 - DanBufferMultiplier = 4 + DanBufferMultiplier = 200 //10s at 20Hz StoreOnTrigger = 0 ICProgName = @app_name NumberOfPreTriggers = 0 diff --git a/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/variables.marte b/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/variables.marte index fd78941..c5c1365 100644 --- a/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/variables.marte +++ b/EC-GN-JA-PCF-IN/src/main/resources/qst-gyrotron-fast-controller/Configurations/src/variables.marte @@ -10,7 +10,7 @@ //# WF Generation Clock #var wg_clock: uint32 = 1000 // Hz //# ADC Clock -#var sampling_freq: uint32 = 1000000 // Hz +#var sampling_freq: uint32 = 10000 // Hz //# App name #var app_name: string = "JADA_RF01App" diff --git a/EC-GN-JA-PCF-IN/src/main/scripts/ec-gn-ja-pcf-gy.sh b/EC-GN-JA-PCF-IN/src/main/scripts/ec-gn-ja-pcf-gy.sh index 3da8830..d89b05d 100644 --- a/EC-GN-JA-PCF-IN/src/main/scripts/ec-gn-ja-pcf-gy.sh +++ b/EC-GN-JA-PCF-IN/src/main/scripts/ec-gn-ja-pcf-gy.sh @@ -24,6 +24,22 @@ export DAN_INTERFACE_NAME=$(cat /etc/codac/networks | grep DAN_DEVICE | cut -d ' export DAN_ARCHIVE_MASTER=4509dn-cpu-0002-d1:9998 export DAN_ARCHIVE_SLAVE=4509dn-cpu-0002-d1:9998 +interrupts=$(cat /proc/interrupts | grep xseries | cut -d ':' -f 1 | sed 's/ //g') +for interrupt in ${interrupts}; do + tuna -q ${interrupt} -c 15 -x +done + +interrupts=$(cat /proc/interrupts | grep pxi6528 | cut -d ':' -f 1 | sed 's/ //g') +for interrupt in ${interrupts}; do + tuna -q ${interrupt} -c 14 -x +done + +interrupts=$(cat /proc/interrupts | grep pxi6259 | cut -d ':' -f 1 | sed 's/ //g') +for interrupt in ${interrupts}; do + tuna -q ${interrupt} -c 13 -x +done + + /opt/codac/bin/danApiTool api init ${FOLDER}/DAN_ACQ.xml ${MARTe2_DIR}/Bin/MARTeApp.ex -f ${CFG_FILE} -l RealTimeLoader -m StateMachine:Start /opt/codac/bin/danApiTool api close all diff --git a/ec-gn-ja-pcf-sdd-in b/ec-gn-ja-pcf-sdd-in index 80ccaff..0ae9048 160000 --- a/ec-gn-ja-pcf-sdd-in +++ b/ec-gn-ja-pcf-sdd-in @@ -1 +1 @@ -Subproject commit 80ccaff4ce0a75b00c01c6c82ffbda42af7d5d37 +Subproject commit 0ae9048c01531a96b21f9f05b7ed7a6890acfef8