Delta 36-R31 User Manual Page 18

  • Download
  • Add to my manuals
  • Print
  • Page
    / 84
  • Table of contents
  • BOOKMARKS
  • Rated. / 5. Based on customer reviews
Page view 17
Accessory 36E
USING ACC-36E WITH TURBO uMAC 18
ADC Manual Read Example PLCs
Ultimately, the procedure above can be implemented in a PLC script to read all channels consecutively
and consistently, creating a “custom automatic” function, as seen in the following examples.
Unipolar PLC Example
Setting up Turbo UMAC with an ACC-36E at base address $078C00 with all 16 ADCs as unipolar. This
example uses M5000, M5002, M5004M5006, and P2001P2016.
#define DataRead_Low M5000 ; Lower 12-bit Data Read register
#define DataRead_High M5002 ; Higher 12-bit Data Read register
#define ChSelect M5004 ; Channel Select Pointer
#define LowADCReady M5005 ; Low ADC Ready Bit
#define HighADCReady M5006 ; High ADC Ready Bit
DataRead_Low->Y:$078C00,0,12,U ; Unsigned for unipolar
DataRead_High->Y:$078C00,12,12,U ; Unsigned for unipolar
ChSelect->Y:$078C00,0,24,U ; Channel Select
LowADCReady->Y:$078F30,5,1 ; Low ADC Ready Bit
HighADCReady->Y:$078F31,5,1 ; High ADC Ready Bit
#define ADC1 P2001 ; Channel 1 ADC storage
#define ADC2 P2002 ; Channel 2 ADC storage
#define ADC3 P2003 ; Channel 3 ADC storage
#define ADC4 P2004 ; Channel 4 ADC storage
#define ADC5 P2005 ; Channel 5 ADC storage
#define ADC6 P2006 ; Channel 6 ADC storage
#define ADC7 P2007 ; Channel 7 ADC storage
#define ADC8 P2008 ; Channel 8 ADC storage
#define ADC9 P2009 ; Channel 9 ADC storage
#define ADC10 P2010 ; Channel 10 ADC storage
#define ADC11 P2011 ; Channel 11 ADC storage
#define ADC12 P2012 ; Channel 12 ADC storage
#define ADC13 P2013 ; Channel 13 ADC storage
#define ADC14 P2014 ; Channel 14 ADC storage
#define ADC15 P2015 ; Channel 15 ADC storage
#define ADC16 P2016 ; Channel 16 ADC storage
Open PLC 1 Clear
ChSelect=0 ; Select Channels 1 and 9 (unipolar)
While(LowADCReady != 1 and HighADCReady != 1) EndWhile ; Wait for ADC Conversions to Finish
ADC1=DataRead_Low ; Read/Copy result into storage
ADC9=DataRead_High ; Read/Copy result into storage
ChSelect=1 ; Select Channels 2 and 10 (unipolar)
While(LowADCReady != 1 and HighADCReady != 1) EndWhile ; Wait for ADC Conversions to Finish
ADC2=DataRead_Low ; Read/Copy result into storage
ADC10=DataRead_High ; Read/Copy result into storage
ChSelect=2 ; Select Channels 3 and 11 (unipolar)
While(LowADCReady != 1 and HighADCReady != 1) EndWhile ; Wait for ADC Conversions to Finish
ADC3=DataRead_Low ; Read/Copy result into storage
ADC11=DataRead_High ; Read/Copy result into storage
ChSelect=3 ; Select Channels 4 and 12 (unipolar)
While(LowADCReady != 1 and HighADCReady != 1) EndWhile ; Wait for ADC Conversions to Finish
ADC4=DataRead_Low ; Read/Copy result into storage
ADC12=DataRead_High ; Read/Copy result into storage
ChSelect=4 ; Select Channels 5 and 13 (unipolar)
While(LowADCReady != 1 and HighADCReady != 1) EndWhile ; Wait for ADC Conversions to Finish
ADC5=DataRead_Low ; Read/Copy result into storage
ADC13=DataRead_High ; Read/Copy result into storage
ChSelect=5 ; Select Channels 6 and 14 (unipolar)
While(LowADCReady != 1 and HighADCReady != 1) EndWhile ; Wait for ADC Conversions to Finish
ADC6=DataRead_Low ; Read/Copy result into storage
ADC14=DataRead_High ; Read/Copy result into storage
ChSelect=6 ; Select Channels 7 and 15 (unipolar)
While(LowADCReady != 1 and HighADCReady != 1) EndWhile ; Wait for ADC Conversions to Finish
ADC7=DataRead_Low ; Read/Copy result into storage
ADC15=DataRead_High ; Read/Copy result into storage
ChSelect=7 ; Select Channels 8 and 16 (unipolar)
While(LowADCReady != 1 and HighADCReady != 1) EndWhile ; Wait for ADC Conversions to Finish
ADC8=DataRead_Low ; Read/Copy result into storage
ADC16=DataRead_High ; Read/Copy result into storage
Close
Page view 17
1 2 ... 13 14 15 16 17 18 19 20 21 22 23 ... 83 84

Comments to this Manuals

No comments