| <?xml version="1.0" encoding="UTF-8"?> |
| <am:Amalthea xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:am="http://app4mc.eclipse.org/amalthea/0.8.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> |
| <swModel> |
| <runnables name="Display_Sensors" activations="500ms?type=PeriodicActivation" callback="false" service="false"> |
| <runnableItems xsi:type="am:RunnableInstructions"> |
| <default xsi:type="am:InstructionsConstant" value="3173300"/> |
| </runnableItems> |
| <runnableItems xsi:type="am:LabelAccess" data="humidity?type=Label" access="read"/> |
| <runnableItems xsi:type="am:LabelAccess" data="temperature?type=Label" access="read"/> |
| <runnableItems xsi:type="am:LabelAccess" data="infrared_Frontleft?type=Label" access="read"/> |
| <runnableItems xsi:type="am:LabelAccess" data="US_distance_front?type=Label" access="read"/> |
| <runnableItems xsi:type="am:LabelAccess" data="bearing?type=Label" access="read"/> |
| </runnables> |
| <runnables name="InfraRed" activations="500ms?type=PeriodicActivation" callback="false" service="false"> |
| <runnableItems xsi:type="am:RunnableInstructions"> |
| <default xsi:type="am:InstructionsConstant" value="244100"/> |
| </runnableItems> |
| <runnableItems xsi:type="am:SemaphoreAccess" semaphore="sem_ir?type=Semaphore" access="request"/> |
| <runnableItems xsi:type="am:LabelAccess" data="infrared_Frontleft?type=Label" access="write"/> |
| <runnableItems xsi:type="am:SemaphoreAccess" semaphore="sem_ir?type=Semaphore" access="release"/> |
| </runnables> |
| <runnables name="MotorDriver" activations="100ms?type=PeriodicActivation" callback="false" service="false"> |
| <runnableItems xsi:type="am:RunnableInstructions"> |
| <default xsi:type="am:InstructionsConstant" value="122050"/> |
| </runnableItems> |
| <runnableItems xsi:type="am:SemaphoreAccess" semaphore="sem_kc?type=Semaphore" access="request"/> |
| <runnableItems xsi:type="am:LabelAccess" data="keycommand_shared?type=Label" access="write"/> |
| <runnableItems xsi:type="am:SemaphoreAccess" semaphore="sem_kc?type=Semaphore" access="release"/> |
| </runnables> |
| <runnables name="US_Grove_Front" activations="500ms?type=PeriodicActivation" callback="false" service="false"> |
| <runnableItems xsi:type="am:RunnableInstructions"> |
| <default xsi:type="am:InstructionsConstant" value="5858400"/> |
| </runnableItems> |
| <runnableItems xsi:type="am:SemaphoreAccess" semaphore="sem_us?type=Semaphore" access="request"/> |
| <runnableItems xsi:type="am:LabelAccess" data="US_distance_front?type=Label" access="write"/> |
| <runnableItems xsi:type="am:SemaphoreAccess" semaphore="sem_us?type=Semaphore" access="release"/> |
| </runnables> |
| <runnables name="US_SR04_Front" activations="500ms?type=PeriodicActivation" callback="false" service="false"> |
| <runnableItems xsi:type="am:RunnableInstructions"> |
| <default xsi:type="am:InstructionsConstant" value="4882000"/> |
| </runnableItems> |
| <runnableItems xsi:type="am:SemaphoreAccess" semaphore="sem_us?type=Semaphore" access="request"/> |
| <runnableItems xsi:type="am:LabelAccess" data="US_distance_front?type=Label" access="write"/> |
| <runnableItems xsi:type="am:SemaphoreAccess" semaphore="sem_us?type=Semaphore" access="release"/> |
| </runnables> |
| <runnables name="US_SR04_Back" activations="500ms?type=PeriodicActivation" callback="false" service="false"> |
| <runnableItems xsi:type="am:RunnableInstructions"> |
| <default xsi:type="am:InstructionsConstant" value="4882000"/> |
| </runnableItems> |
| <runnableItems xsi:type="am:SemaphoreAccess" semaphore="sem_us?type=Semaphore" access="request"/> |
| <runnableItems xsi:type="am:LabelAccess" data="US_distance_back?type=Label" access="write"/> |
| <runnableItems xsi:type="am:SemaphoreAccess" semaphore="sem_us?type=Semaphore" access="release"/> |
| </runnables> |
| <runnables name="Record_Timing" activations="2s?type=PeriodicActivation" callback="false" service="false"> |
| <runnableItems xsi:type="am:RunnableInstructions"> |
| <default xsi:type="am:InstructionsConstant" value="17087000"/> |
| </runnableItems> |
| </runnables> |
| <runnables name="Webserver" activations="50ms?type=PeriodicActivation" callback="false" service="false"> |
| <runnableItems xsi:type="am:RunnableInstructions"> |
| <default xsi:type="am:InstructionsConstant" value="488200"/> |
| </runnableItems> |
| <runnableItems xsi:type="am:SemaphoreAccess" semaphore="sem_kc?type=Semaphore" access="request"/> |
| <runnableItems xsi:type="am:LabelAccess" data="keycommand_shared?type=Label" access="write"/> |
| <runnableItems xsi:type="am:SemaphoreAccess" semaphore="sem_kc?type=Semaphore" access="release"/> |
| </runnables> |
| <runnables name="KeyCommand" activations="50ms?type=PeriodicActivation" callback="false" service="false"> |
| <runnableItems xsi:type="am:RunnableInstructions"> |
| <default xsi:type="am:InstructionsConstant" value="488200"/> |
| </runnableItems> |
| <runnableItems xsi:type="am:SemaphoreAccess" semaphore="sem_kc?type=Semaphore" access="request"/> |
| <runnableItems xsi:type="am:LabelAccess" data="keycommand_shared?type=Label" access="write"/> |
| <runnableItems xsi:type="am:SemaphoreAccess" semaphore="sem_kc?type=Semaphore" access="release"/> |
| </runnables> |
| <runnables name="Compass" activations="500ms?type=PeriodicActivation" callback="false" service="false"> |
| <runnableItems xsi:type="am:RunnableInstructions"> |
| <default xsi:type="am:InstructionsConstant" value="488200"/> |
| </runnableItems> |
| <runnableItems xsi:type="am:SemaphoreAccess" semaphore="sem_bear?type=Semaphore" access="request"/> |
| <runnableItems xsi:type="am:LabelAccess" data="bearing?type=Label" access="write"/> |
| <runnableItems xsi:type="am:SemaphoreAccess" semaphore="sem_bear?type=Semaphore" access="release"/> |
| </runnables> |
| <runnables name="Temperature" activations="500ms?type=PeriodicActivation" callback="false" service="false"> |
| <runnableItems xsi:type="am:RunnableInstructions"> |
| <default xsi:type="am:InstructionsConstant" value="488200"/> |
| </runnableItems> |
| <runnableItems xsi:type="am:SemaphoreAccess" semaphore="sem_temp?type=Semaphore" access="request"/> |
| <runnableItems xsi:type="am:LabelAccess" data="temperature?type=Label" access="write"/> |
| <runnableItems xsi:type="am:SemaphoreAccess" semaphore="sem_temp?type=Semaphore" access="release"/> |
| <runnableItems xsi:type="am:SemaphoreAccess" semaphore="sem_hum?type=Semaphore" access="request"/> |
| <runnableItems xsi:type="am:LabelAccess" data="humidity?type=Label" access="write"/> |
| <runnableItems xsi:type="am:SemaphoreAccess" semaphore="sem_hum?type=Semaphore" access="release"/> |
| </runnables> |
| <runnables name="ACC" activations="100ms?type=PeriodicActivation" callback="false" service="false" asilLevel="B"> |
| <runnableItems xsi:type="am:LabelAccess" data="US_distance_front?type=Label" access="read"/> |
| <runnableItems xsi:type="am:SemaphoreAccess" semaphore="sem_kc?type=Semaphore" access="request"/> |
| <runnableItems xsi:type="am:LabelAccess" data="keycommand_shared?type=Label" access="write"/> |
| <runnableItems xsi:type="am:SemaphoreAccess" semaphore="sem_kc?type=Semaphore" access="release"/> |
| <runnableItems xsi:type="am:LabelAccess" data="US_distance_back?type=Label" access="read"/> |
| <runnableItems xsi:type="am:RunnableInstructions"> |
| <default xsi:type="am:InstructionsConstant" value="0"/> |
| </runnableItems> |
| </runnables> |
| <runnables name="US_Grove_Back" activations="500ms?type=PeriodicActivation" callback="false" service="false"> |
| <runnableItems xsi:type="am:RunnableInstructions"> |
| <default xsi:type="am:InstructionsConstant" value="5858400"/> |
| </runnableItems> |
| <runnableItems xsi:type="am:SemaphoreAccess" semaphore="sem_us?type=Semaphore" access="request"/> |
| <runnableItems xsi:type="am:LabelAccess" data="US_distance_back?type=Label" access="write"/> |
| <runnableItems xsi:type="am:SemaphoreAccess" semaphore="sem_us?type=Semaphore" access="release"/> |
| </runnables> |
| <runnables name="RaspberryTest" activations="1s?type=PeriodicActivation" callback="false" service="false"> |
| <runnableItems xsi:type="am:RunnableInstructions"> |
| <default xsi:type="am:InstructionsConstant" value="1000"/> |
| </runnableItems> |
| </runnables> |
| <runnables name="Parking" activations="100ms?type=PeriodicActivation" callback="false" service="false"> |
| <runnableItems xsi:type="am:RunnableInstructions"> |
| <default xsi:type="am:InstructionsConstant" value="1000"/> |
| </runnableItems> |
| <runnableItems xsi:type="am:LabelAccess" data="US_distance_back?type=Label" access="read"/> |
| <runnableItems xsi:type="am:LabelAccess" data="US_distance_front?type=Label" access="read"/> |
| </runnables> |
| <runnables name="Record_Sensordata" activations="400ms?type=PeriodicActivation" callback="false" service="false"> |
| <runnableItems xsi:type="am:RunnableInstructions"> |
| <default xsi:type="am:InstructionsConstant" value="1000"/> |
| </runnableItems> |
| <runnableItems xsi:type="am:LabelAccess" data="bearing?type=Label" access="read"/> |
| <runnableItems xsi:type="am:LabelAccess" data="humidity?type=Label" access="read"/> |
| <runnableItems xsi:type="am:LabelAccess" data="infrared_Backleft?type=Label" access="read"/> |
| <runnableItems xsi:type="am:LabelAccess" data="infrared_Backright?type=Label" access="read"/> |
| <runnableItems xsi:type="am:LabelAccess" data="infrared_Frontleft?type=Label" access="read"/> |
| <runnableItems xsi:type="am:LabelAccess" data="infrared_Frontright?type=Label" access="read"/> |
| <runnableItems xsi:type="am:LabelAccess" data="temperature?type=Label" access="read"/> |
| <runnableItems xsi:type="am:LabelAccess" data="US_distance_back?type=Label" access="read"/> |
| <runnableItems xsi:type="am:LabelAccess" data="US_distance_front?type=Label" access="read"/> |
| </runnables> |
| <labels name="keycommand_shared" constant="false" bVolatile="false"> |
| <size value="1" unit="B"/> |
| </labels> |
| <labels name="infrared_Frontleft" constant="false" bVolatile="false"> |
| <size value="4" unit="B"/> |
| </labels> |
| <labels name="US_distance_front" constant="false" bVolatile="false"> |
| <size value="4" unit="B"/> |
| </labels> |
| <labels name="US_distance_back" constant="false" bVolatile="false"> |
| <size value="4" unit="B"/> |
| </labels> |
| <labels name="local_command" constant="false" bVolatile="false"> |
| <size value="1" unit="B"/> |
| </labels> |
| <labels name="humidity" constant="false" bVolatile="false"> |
| <size value="4" unit="B"/> |
| </labels> |
| <labels name="temperature" constant="false" bVolatile="false"> |
| <size value="4" unit="B"/> |
| </labels> |
| <labels name="bearing" constant="false" bVolatile="false"> |
| <size value="4" unit="B"/> |
| </labels> |
| <labels name="infrared_Frontright" constant="false" bVolatile="false"> |
| <size value="4" unit="B"/> |
| </labels> |
| <labels name="infrared_Backleft" constant="false" bVolatile="false"> |
| <size value="4" unit="B"/> |
| </labels> |
| <labels name="infrared_Backright" constant="false" bVolatile="false"> |
| <size value="4" unit="B"/> |
| </labels> |
| <labels name="speed" constant="false" bVolatile="false"> |
| <size value="4" unit="B"/> |
| </labels> |
| <labels name="steering" constant="false" bVolatile="false"> |
| <size value="4" unit="B"/> |
| </labels> |
| <activations xsi:type="am:PeriodicActivation" name="50ms"> |
| <min value="50" unit="ms"/> |
| <max value="50" unit="ms"/> |
| </activations> |
| <activations xsi:type="am:PeriodicActivation" name="100ms"> |
| <min value="100" unit="ms"/> |
| <max value="100" unit="ms"/> |
| </activations> |
| <activations xsi:type="am:PeriodicActivation" name="500ms"> |
| <min value="500" unit="ms"/> |
| <max value="500" unit="ms"/> |
| </activations> |
| <activations xsi:type="am:PeriodicActivation" name="1s"> |
| <min value="1" unit="s"/> |
| <max value="1" unit="s"/> |
| <recurrence value="1" unit="s"/> |
| </activations> |
| <activations xsi:type="am:PeriodicActivation" name="400ms"> |
| <min value="400" unit="ms"/> |
| <max value="400" unit="ms"/> |
| <recurrence value="400" unit="ms"/> |
| </activations> |
| <activations xsi:type="am:PeriodicActivation" name="2s"> |
| <min value="2" unit="s"/> |
| <max value="2" unit="s"/> |
| <recurrence value="2" unit="s"/> |
| </activations> |
| </swModel> |
| <hwModel> |
| <coreTypes name="ARM Coretex-A53" bitWidth="64" instructionsPerCycle="1.0"/> |
| <system> |
| <ecus name="RPI3"> |
| <microcontrollers name="ARM Coretex-A53"> |
| <cores name="1" coreType="ARM+Coretex-A53?type=CoreType" lockstepGroup="0"> |
| <prescaler name="prescaler1" clockRatio="1.0" quartz="QM?type=Quartz"/> |
| </cores> |
| <cores name="2" coreType="ARM+Coretex-A53?type=CoreType" lockstepGroup="0"> |
| <prescaler name="prescaler2" clockRatio="1.0" quartz="QM?type=Quartz"/> |
| </cores> |
| <cores name="3" coreType="ARM+Coretex-A53?type=CoreType" lockstepGroup="0"> |
| <prescaler name="prescaler3" clockRatio="1.0" quartz="QM?type=Quartz"/> |
| </cores> |
| <cores name="4" coreType="ARM+Coretex-A53?type=CoreType" lockstepGroup="0"> |
| <prescaler name="prescaler4" clockRatio="1.0" quartz="QM?type=Quartz"/> |
| </cores> |
| </microcontrollers> |
| </ecus> |
| <quartzes name="QM"> |
| <frequency unit="MHz" value="1200.0"/> |
| </quartzes> |
| </system> |
| </hwModel> |
| <osModel> |
| <semaphores name="sem_ir" initialValue="0" maxValue="0" priorityCeilingProtocol="false"/> |
| <semaphores name="sem_us" initialValue="0" maxValue="0" priorityCeilingProtocol="false"/> |
| <semaphores name="sem_temp" initialValue="0" maxValue="0" priorityCeilingProtocol="false"/> |
| <semaphores name="sem_hum" initialValue="0" maxValue="0" priorityCeilingProtocol="false"/> |
| <semaphores name="sem_kc" initialValue="0" maxValue="0" priorityCeilingProtocol="false"/> |
| <semaphores name="sem_bear" initialValue="0" maxValue="0" priorityCeilingProtocol="false"/> |
| </osModel> |
| </am:Amalthea> |