EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: mbboDirect with ether_ip
From: Hovanes Egiyan <[email protected]>
To: "[email protected]" <[email protected]>
Cc: Hovanes Egiyan <[email protected]>
Date: Mon, 14 Jul 2014 11:31:03 -0400
Hi,

we are using "ether_ip-2.24.1" EPICS module and EPICS base 3-14-12-3 for communicating with Allen-Bradley ControlLogix and CompactLogix PLC-s from GUIs. We need to use BOOL array tags in the PLC code, and we would like to be able to change them from EPICS GUIs. We tried to use mbboDirect EPICS record type and we noticed that mbboDirect records set the corresponding BOOL array tags to zero every time the Linux IOC is rebooted, which is highly undesirable. Has anyone else seen such a behavior? I attached the EPICS DB file, the IOC booting script and the XML project file for the PLC project.
Any suggestion would be appreciated.

Hovanes Egiyan.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="20.00" TargetName="Development" TargetType="Controller" ContainsContext="false" Owner="halldusers, Thomas Jefferson National Labs" ExportDate="Fri Jul 11 08:14:38 2014" ExportOptions="DecoratedData ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Target" Name="Development" ProcessorType="1756-L62" MajorRev="20" MinorRev="11" TimeSlice="20" ShareUnusedTimeSlice="1" ProjectCreationDate="Tue Jul 08 07:27:16 2014" LastModifiedDate="Fri Jul 11 08:12:01 2014" SFCExecutionControl="CurrentActive" SFCRestartPosition="MostRecent"
 SFCLastScan="DontScan" CommPath="CntrLogix_DEVEL\129.57.26.156\Backplane\0" ProjectSN="16#0072_06b4" MatchProjectToController="false" CanUseRPIFromProducer="false" InhibitAutomaticFirmwareUpdate="0">
<RedundancyInfo Enabled="false" KeepTestEditsOnSwitchOver="false" IOMemoryPadPercentage="90" DataTablePadPercentage="50"/>
<Security Code="0" ChangesToDetect="16#ffff_ffff_ffff_ffff"/>
<SafetyInfo/>
<DataTypes/>
<Modules>
<Module Name="Local" CatalogNumber="1756-L62" Vendor="1" ProductType="14" ProductCode="55" Major="20" Minor="11" ParentModule="Local" ParentModPortId="1" Inhibited="false" MajorFault="true"
>
<EKey State="ExactMatch"/>
<Ports>
<Port Id="1" Address="0" Type="ICP" Upstream="false">
<Bus Size="10"/>
</Port>
</Ports>
</Module>
<Module Name="EN2T5" CatalogNumber="1756-EN2T" Vendor="1" ProductType="12" ProductCode="166" Major="5" Minor="7" ParentModule="Local" ParentModPortId="1" Inhibited="false" MajorFault="false"
>
<EKey State="CompatibleModule"/>
<Ports>
<Port Id="1" Address="9" Type="ICP" Upstream="true"/>
<Port Id="2" Address="129.57.26.156" Type="Ethernet" Upstream="false">
<Bus/>
</Port>
</Ports>
<Communications CommMethod="536870914">
<Connections/>
</Communications>
<ExtendedProperties>
<public><ConfigID>4325481</ConfigID></public></ExtendedProperties>
</Module>
</Modules>
<AddOnInstructionDefinitions/>
<Tags/>
<Programs>
<Program Name="MainProgram" TestEdits="false" MainRoutineName="tag_test" Disabled="false">
<Tags>
<Tag Name="RTD_Active" TagType="Base" DataType="BOOL" Dimensions="64" Radix="Decimal" Constant="false" ExternalAccess="Read/Write">
<Data>FC FF FF FF FF FF 01 00</Data>
<Data Format="Decorated">
<Array DataType="BOOL" Dimensions="64" Radix="Decimal">
<Element Index="[0]" Value="0"/>
<Element Index="[1]" Value="0"/>
<Element Index="[2]" Value="1"/>
<Element Index="[3]" Value="1"/>
<Element Index="[4]" Value="1"/>
<Element Index="[5]" Value="1"/>
<Element Index="[6]" Value="1"/>
<Element Index="[7]" Value="1"/>
<Element Index="[8]" Value="1"/>
<Element Index="[9]" Value="1"/>
<Element Index="[10]" Value="1"/>
<Element Index="[11]" Value="1"/>
<Element Index="[12]" Value="1"/>
<Element Index="[13]" Value="1"/>
<Element Index="[14]" Value="1"/>
<Element Index="[15]" Value="1"/>
<Element Index="[16]" Value="1"/>
<Element Index="[17]" Value="1"/>
<Element Index="[18]" Value="1"/>
<Element Index="[19]" Value="1"/>
<Element Index="[20]" Value="1"/>
<Element Index="[21]" Value="1"/>
<Element Index="[22]" Value="1"/>
<Element Index="[23]" Value="1"/>
<Element Index="[24]" Value="1"/>
<Element Index="[25]" Value="1"/>
<Element Index="[26]" Value="1"/>
<Element Index="[27]" Value="1"/>
<Element Index="[28]" Value="1"/>
<Element Index="[29]" Value="1"/>
<Element Index="[30]" Value="1"/>
<Element Index="[31]" Value="1"/>
<Element Index="[32]" Value="1"/>
<Element Index="[33]" Value="1"/>
<Element Index="[34]" Value="1"/>
<Element Index="[35]" Value="1"/>
<Element Index="[36]" Value="1"/>
<Element Index="[37]" Value="1"/>
<Element Index="[38]" Value="1"/>
<Element Index="[39]" Value="1"/>
<Element Index="[40]" Value="1"/>
<Element Index="[41]" Value="1"/>
<Element Index="[42]" Value="1"/>
<Element Index="[43]" Value="1"/>
<Element Index="[44]" Value="1"/>
<Element Index="[45]" Value="1"/>
<Element Index="[46]" Value="1"/>
<Element Index="[47]" Value="1"/>
<Element Index="[48]" Value="1"/>
<Element Index="[49]" Value="0"/>
<Element Index="[50]" Value="0"/>
<Element Index="[51]" Value="0"/>
<Element Index="[52]" Value="0"/>
<Element Index="[53]" Value="0"/>
<Element Index="[54]" Value="0"/>
<Element Index="[55]" Value="0"/>
<Element Index="[56]" Value="0"/>
<Element Index="[57]" Value="0"/>
<Element Index="[58]" Value="0"/>
<Element Index="[59]" Value="0"/>
<Element Index="[60]" Value="0"/>
<Element Index="[61]" Value="0"/>
<Element Index="[62]" Value="0"/>
<Element Index="[63]" Value="0"/>
</Array>
</Data>
</Tag>
</Tags>
<Routines>
<Routine Name="tag_test" Type="FBD">
<FBDContent SheetSize="Letter - 8.5 x 11 in" SheetOrientation="Landscape">
<Sheet Number="1"/>
</FBDContent>
</Routine>
</Routines>
</Program>
</Programs>
<Tasks>
<Task Name="MainTask" Type="CONTINUOUS" Priority="10" Watchdog="500" DisableUpdateOutputs="false" InhibitTask="false">
<ScheduledPrograms>
<ScheduledProgram Name="MainProgram"/>
</ScheduledPrograms>
</Task>
</Tasks>
<CommPorts>
<SerialPort Channel="0" BaudRate="19200" Parity="No Parity" DataBits="8 Bits of Data" StopBits="1 Stop Bit" ComDriverId="DF1" RTSOffDelay="0" RTSSendDelay="0" ControlLine="No Handshake" RemoteModeChangeFlag="false" ModeChangeAttentionChar="27"
 SystemModeCharacter="83" UserModeCharacter="85" DCDWaitDelay="0">
<ASCII XONXOFFEnable="false" DeleteMode="0" EchoMode="0" TerminationChars="65293" AppendChars="2573" BufferSize="82"/>
<DF1 DuplicateDetection="true" ErrorDetection="BCC Error" EmbeddedResponseEnable="Autodetect" DF1Mode="Pt to Pt" ACKTimeout="50" NAKReceiveLimit="3" ENQTransmitLimit="3" TransmitRetries="3" StationAddress="0" ReplyMessageWait="5" PollingMode="Message Based (slave can initiate messages)"
 MasterMessageTransmit="Between station polls" NormalPollNodeFile="&lt;NA&gt;" NormalPollGroupSize="0" PriorityPollNodeFile="&lt;NA&gt;" ActiveStationFile="&lt;NA&gt;" SlavePollTimeout="3000" EOTSuppression="0" MaxStationAddress="31" TokenHoldFactor="1" EnableStoreFwd="false" StoreFwdFile="&lt;NA&gt;"
/>
</SerialPort>
</CommPorts>
<CST MasterID="0"/>
<WallClockTime LocalTimeAdjustment="0" TimeZone="0"/>
<Trends/>
<TimeSynchronize Priority1="128" Priority2="128" PTPEnable="false"/>
</Controller>
</RSLogix5000Content>
This attachment was removed by JLAB's Watch Guard XCS at host 
wgmx2.jlab.org.
 
 
# record for PLC tag <Program:MainProgram.RTD_Active> of type <BOOL>
record( mbboDirect, "testTag" ) 
{ 
  field(DTYP, "EtherIP" ) 
  field(SCAN, "Passive" ) 
  field(NOBT, "16" )
  field(PINI, "NO") 
  field(OUT,  "@$(PLCID) Program:MainProgram.RTD_Active[0] S 1" ) 
} 
 
 

Navigate by Date:
Prev: Re: New standards for small and medium sized astronomical observatories Jitendra Kodilkar
Next: Potentiostat Adam Bark
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: EPICS Codeathon, August 2014 Andrew Johnson
Next: Re: mbboDirect with ether_ip Kasemir, Kay
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 17 Dec 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·