27using System.Collections.Generic;
30using System.Threading.Tasks;
31using System.Runtime.InteropServices;
34using UB = System.Byte;
35using UW = System.UInt16;
36using SW = System.Int16;
37using SL = System.Int32;
38using UL = System.UInt32;
41using GCon = System.IntPtr;
42using GSize = System.UInt32;
46using GBufOut = System.Text.StringBuilder;
47using GBufIn = System.String;
60 #region "C# wrappers of gclib C calls"
62 #region "Private properties"
63 private const int BufferSize_ = 500000;
64 private GCStringOut Buffer_ =
new System.Text.StringBuilder(BufferSize_);
65 private byte[] ByteArray_ =
new byte[512];
66 private GCon ConnectionHandle_;
67 private bool ConnectionStatus_ =
false;
81 GReturn rc = DllGAddresses(Buffer_, BufferSize_);
84 char[] delimiters =
new char[] {
'\r',
'\n' };
85 return Buffer_.ToString().Split(delimiters, System.StringSplitOptions.RemoveEmptyEntries);
104 public void GArrayDownload(
string array_name, ref List<double> data, Int16 first = -1, Int16 last = -1)
106 System.Text.StringBuilder ArrayData =
new System.Text.StringBuilder(BufferSize_);
107 int len = data.Count();
108 for (
int i = 0; i <= len - 1; i++)
110 ArrayData.Append(data[i].ToString(
"F4"));
113 ArrayData.Append(
",");
116 GReturn rc = DllGArrayDownload(ConnectionHandle_, array_name, first, last, ArrayData.ToString());
119 throw new System.Exception(
GError(rc));
104 public void GArrayDownload(
string array_name, ref List<double> data, Int16 first = -1, Int16 last = -1) {
…}
134 GReturn rc = DllGArrayDownloadFile(ConnectionHandle_, Path);
137 throw new System.Exception(
GError(rc));
153 public List<double>
GArrayUpload(
string array_name, Int16 first = -1, Int16 last = -1)
155 List<double> array =
new List<double>();
156 GReturn rc = DllGArrayUpload(ConnectionHandle_, array_name, first, last, 1, Buffer_, BufferSize_);
160 throw new System.Exception(
GError(rc));
162 char[] delimiters =
new char[] {
',' };
164 string[] tokens = Buffer_.ToString().Split(delimiters, System.StringSplitOptions.RemoveEmptyEntries);
166 foreach (
string s
in tokens)
168 if (!
double.TryParse(s, out value))
170 throw new System.Exception(
"Could not parse " + s +
" into double");
153 public List<double>
GArrayUpload(
string array_name, Int16 first = -1, Int16 last = -1) {
…}
189 GReturn rc = DllGArrayUploadFile(ConnectionHandle_, Path, Names);
192 throw new System.Exception(
GError(rc));
208 GReturn rc = DllGAssign(ip, mac);
211 throw new System.Exception(
GError(rc));
224 if(ConnectionStatus_)
225 DllGClose(ConnectionHandle_);
227 ConnectionStatus_ =
false;
241 public string GCommand(
string Command,
bool Trim =
true)
243 GSize bytes_read = 0;
244 GReturn rc = DllGCommand(ConnectionHandle_, Command, Buffer_, BufferSize_, ref bytes_read);
247 throw new System.Exception(
GError(rc));
251 string r = Buffer_.ToString();
252 if (r[r.Count() - 1] ==
':')
254 r = r.Substring(0, r.Count() - 1);
260 return Buffer_.ToString();
241 public string GCommand(
string Command,
bool Trim =
true) {
…}
275 return Convert.ToInt16(Convert.ToDouble(
GCommand(Command)));
289 return Convert.ToDouble(
GCommand(Command));
305 DllGError(ErrorCode, Buffer_, BufferSize_);
306 return ErrorCode.ToString() +
" " + Buffer_.ToString() +
"\n";
320 GReturn rc = DllGFirmwareDownload(ConnectionHandle_, filepath);
323 throw new System.Exception(
GError(rc));
335 GReturn rc = DllGInfo(ConnectionHandle_, Buffer_, BufferSize_);
338 return Buffer_.ToString();
357 GReturn rc = DllGInterrupt(ConnectionHandle_, ref StatusByte);
379 GReturn rc = DllGIpRequests(Buffer_, BufferSize_);
382 char[] delimiters =
new char[] {
'\r',
'\n' };
383 return Buffer_.ToString().Split(delimiters, System.StringSplitOptions.RemoveEmptyEntries);
386 return new string[0];
401 GReturn rc = DllGMessage(ConnectionHandle_, Buffer_, BufferSize_);
404 return Buffer_.ToString();
423 GReturn rc = DllGMotionComplete(ConnectionHandle_, axes);
426 throw new System.Exception(
GError(rc));
441 GReturn rc = DllGOpen(address, ref ConnectionHandle_);
444 throw new System.Exception(
GError(rc));
447 ConnectionStatus_ =
true;
462 GReturn rc = DllGProgramDownload(ConnectionHandle_, program, preprocessor);
465 throw new System.Exception(
GError(rc));
481 GReturn rc = DllGProgramDownloadFile(ConnectionHandle_, file_path, preprocessor);
484 throw new System.Exception(
GError(rc));
498 GReturn rc = DllGProgramUpload(ConnectionHandle_, Buffer_, BufferSize_);
501 throw new System.Exception(
GError(rc));
505 return Buffer_.ToString();
520 GReturn rc = DllGProgramUploadFile(ConnectionHandle_, file_path);
523 throw new System.Exception(
GError(rc));
537 GReturn rc = DllGRead(ConnectionHandle_, ByteArray_, (uint)ByteArray_.Length, ref read);
540 byte[] ReturnData =
new byte[read];
542 for (GSize i = 0; i <= read - 1; i++)
544 ReturnData[i] = ByteArray_[i];
565 public T GRecord<T>(
bool async)
572 GReturn rc = DllGRecord(ConnectionHandle_, ByteArray_, method);
574 throw new System.Exception(
GError(rc));
576 return ByteArrayToDataRecord<T>(ByteArray_);
565 public T GRecord<T>(
bool async) {
…}
590 GReturn rc = DllGRecordRate(ConnectionHandle_, period_ms);
593 throw new System.Exception(
GError(rc));
607 DllGTimeout(ConnectionHandle_, timeout_ms);
618 GReturn rc = DllGVersion(Buffer_, BufferSize_);
621 return Buffer_.ToString();
639 GReturn rc = DllGWrite(ConnectionHandle_, buffer, (uint) buffer.Length);
642 throw new System.Exception(
GError(rc));
660 GReturn rc = DllGSetupDownloadFile(ConnectionHandle_, path, options, Buffer_, BufferSize_);
662 string ret_buf = Buffer_.ToString();
663 ret_buf = ret_buf.Replace(
"\r\n",
", ");
669 throw new System.Exception(
GError(rc));
674 ret_buf +=
"\"options\"," + rc +
"\n";
677 char[] delimiters =
new char[] {
'\n' };
678 return ret_buf.ToString().Split(delimiters, System.StringSplitOptions.RemoveEmptyEntries);
692 GReturn rc = DllGSetServer(server_name);
696 throw new System.Exception(
GError(rc));
708 GReturn rc = DllGServerStatus(Buffer_, BufferSize_);
711 return Buffer_.ToString();
713 throw new System.Exception(
GError(rc));
724 GReturn rc = DllGListServers(Buffer_, BufferSize_);
728 char[] delimiters =
new char[] {
'\n' };
729 return Buffer_.ToString().Split(delimiters, System.StringSplitOptions.RemoveEmptyEntries);
733 throw new System.Exception(
GError(rc));
747 GReturn rc = DllGPublishServer(server_name, Convert.ToInt16(publish), Convert.ToInt16(save));
750 throw new System.Exception(
GError(rc));
761 GReturn rc = DllGRemoteConnections(Buffer_, BufferSize_);
765 char[] delimiters =
new char[] {
'\n' };
766 return Buffer_.ToString().Split(delimiters, System.StringSplitOptions.RemoveEmptyEntries);
770 throw new System.Exception(
GError(rc));
776 #region "DLL Imports"
779 #region "Error Codes"
787 [DllImport(
"gclibo", EntryPoint =
"GAddresses", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
790 [DllImport(
"gclib", EntryPoint =
"GArrayDownload", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
793 [DllImport(
"gclibo", EntryPoint =
"GArrayDownloadFile", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
796 [DllImport(
"gclib", EntryPoint =
"GArrayUpload", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
799 [DllImport(
"gclibo", EntryPoint =
"GArrayUploadFile", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
802 [DllImport(
"gclibo", EntryPoint =
"GAssign", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
805 [DllImport(
"gclib", EntryPoint =
"GClose", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
808 [DllImport(
"gclib", EntryPoint =
"GCommand", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
811 [DllImport(
"gclibo", EntryPoint =
"GError", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
814 [DllImport(
"gclib", EntryPoint =
"GFirmwareDownload", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
817 [DllImport(
"gclibo", EntryPoint =
"GInfo", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
820 [DllImport(
"gclib", EntryPoint =
"GInterrupt", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
823 [DllImport(
"gclibo", EntryPoint =
"GIpRequests", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
826 [DllImport(
"gclib", EntryPoint =
"GMessage", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
829 [DllImport(
"gclibo", EntryPoint =
"GMotionComplete", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
832 [DllImport(
"gclib", EntryPoint =
"GOpen", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
835 [DllImport(
"gclib", EntryPoint =
"GProgramDownload", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
838 [DllImport(
"gclibo", EntryPoint =
"GProgramDownloadFile", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
841 [DllImport(
"gclib", EntryPoint =
"GProgramUpload", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
844 [DllImport(
"gclibo", EntryPoint =
"GProgramUploadFile", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
847 [DllImport(
"gclib", EntryPoint =
"GRead", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
848 private static extern GReturn DllGRead(
GCon g,
byte[] record,
GSize buffer_len, ref
GSize bytes_read);
850 [DllImport(
"gclib", EntryPoint =
"GRecord", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
853 [DllImport(
"gclibo", EntryPoint =
"GRecordRate", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
854 private static extern GReturn DllGRecordRate(
GCon g,
double period_ms);
856 [DllImport(
"gclibo", EntryPoint =
"GTimeout", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
857 private static extern void DllGTimeout(
GCon g,
GOption timeoutMs);
859 [DllImport(
"gclibo", EntryPoint =
"GVersion", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
862 [DllImport(
"gclib", EntryPoint =
"GWrite", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
865 [DllImport(
"gclibo", EntryPoint =
"GSetupDownloadFile", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
868 [DllImport(
"gclibo", EntryPoint =
"GSetServer", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
871 [DllImport(
"gclibo", EntryPoint =
"GServerStatus", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
874 [DllImport(
"gclibo", EntryPoint =
"GListServers", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
877 [DllImport(
"gclibo", EntryPoint =
"GPublishServer", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
880 [DllImport(
"gclibo", EntryPoint =
"GRemoteConnections", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
885 #region "Data Record"
887 private T ByteArrayToDataRecord<T>(
byte[] array)
890 GCHandle handle = GCHandle.Alloc(array, GCHandleType.Pinned);
893 return Marshal.PtrToStructure<T>(handle.AddrOfPinnedObject());
911 private static byte[] StructToByteArray(
GDataRecord record)
913 int size = Marshal.SizeOf(record);
914 byte[] arr =
new byte[size];
916 IntPtr ptr = Marshal.AllocHGlobal(size);
917 Marshal.StructureToPtr(record, ptr,
true);
918 Marshal.Copy(ptr, arr, 0, size);
919 Marshal.FreeHGlobal(ptr);
925 [StructLayout(LayoutKind.Sequential, Pack=1)]
928 public byte[]
byte_array() {
return StructToByteArray(
this); }
1109 [StructLayout(LayoutKind.Sequential, Pack=1)]
1301 [StructLayout(LayoutKind.Sequential, Pack=1)]
1480 [StructLayout(LayoutKind.Sequential, Pack=1)]
1622 [StructLayout(LayoutKind.Sequential, Pack=1)]
1715 [StructLayout(LayoutKind.Sequential, Pack=1)]
1769 [StructLayout(LayoutKind.Sequential, Pack=1)]
1819 [StructLayout(LayoutKind.Sequential, Pack=1)]
1871 [StructLayout(LayoutKind.Sequential, Pack=1)]
1924 [StructLayout(LayoutKind.Sequential, Pack=1)]
Provides a class that binds to gclib's unmanaged dll.
byte[] GRead()
Performs a read on the connection.
void GWrite(string buffer)
Performs a write on the connection.
const char * GBufIn
Data input to the library. No null-termination, function will have a GSize to indicate bytes to write...
int GReturn
Every function returns a value of type GReturn. See gclib_errors.h for possible values.
int GOption
Option integer for various formatting, etc.
unsigned char GStatus
Interrupt status byte.
unsigned int GSize
Size of buffers, etc.
char * GBufOut
Data output from the library. No null-termination implied. Returned values may be null-terminated,...
void * GCon
Connection handle. Unique for each connection in process. Assigned a non-zero value in GOpen().
char * GCStringOut
C-string output from the library. Implies null-termination.
const char * GCStringIn
C-string input to the library. Implies null-termination.
#define G_NO_ERROR
Return value if function succeeded.
GCLIB_DLL_EXPORTED void GCALL GError(GReturn rc, GCStringOut error, GSize error_len)
Provides a human-readable description string for return codes.
GCLIB_DLL_EXPORTED GReturn GCALL GCommand(GCon g, GCStringIn command, GBufOut buffer, GSize buffer_len, GSize *bytes_returned)
Performs a command-and-response transaction on the connection.
Int16 GCmdI(string Command)
Used for command-and-response transactions.
double GCmdD(string Command)
Used for command-and-response transactions.
string GCommand(string Command, bool Trim=true)
Used for command-and-response transactions.
string[] GIpRequests()
Provides a list of all Galil controllers requesting IP addresses via BOOT-P or DHCP.
string GInfo()
Provides a useful connection string.
void GAssign(string ip, string mac)
Assigns IP address over the Ethernet to a controller at a given MAC address.
void GTimeout(Int16 timeout_ms)
Set the timeout of communication transactions.
void GClose()
Used to close a connection to Galil hardware.
string[] GAddresses()
Return a string array of available connection addresses.
void GOpen(string address)
Used to open a connection to Galil hardware.
void GMotionComplete(string axes)
Blocking call that returns once all axes specified have completed their motion.
void GFirmwareDownload(string filepath)
Upgrade firmware.
void GProgramDownloadFile(string file_path, string preprocessor="")
Allows downloading of a DMC program from file.
void GProgramUploadFile(string file_path)
Allows uploading of a DMC program to a file.
void GArrayDownloadFile(string Path)
Allows downloading of a program array file to the controller.
void GArrayDownload(string array_name, ref List< double > data, Int16 first=-1, Int16 last=-1)
Downloads array data to a pre-dimensioned array in the controller's array table.
List< double > GArrayUpload(string array_name, Int16 first=-1, Int16 last=-1)
Uploads array data from the controller's array table.
string[] GSetupDownloadFile(string path, Int32 options)
Allows downloading of a Galil compressed backup (gcb) file to the controller.
string GProgramUpload()
Allows uploading of a DMC program to a string.
void GArrayUploadFile(string Path, string Names)
Allows uploading of a program array file from the controller to an array CSV file.
void GProgramDownload(string program, string preprocessor="")
Allows downloading of a DMC program from a string buffer.
string GServerStatus()
Retrieves the name of your local gcaps server and whether or not it is currently published.
void GSetServer(string server_name)
Connects gclib to a new gcaps server.
string[] GRemoteConnections()
Returns a list of IP Addresses that currently have an open connection to your hardware.
void GPublishServer(string server_name, bool publish, bool save)
Publishes or removes local gcaps server from the network.
string[] GListServers()
Retrieves a list of gcaps servers that are advertising themselves on the local network.
byte GInterrupt()
Provides access to PCI and UDP interrupts from the controller.
void GRecordRate(double period_ms)
Sets the asynchronous data record to a user-specified period via DR.
string GMessage()
Provides access to unsolicited messages.
string GVersion()
Used to get the gclib version.
byte[] byte_array()
Returns the data record as a byte array and allows for access to individual bytes.
Data record struct for DMC-1802 controllers.
UB general_status
general status
UB axis_c_reserved_1
Reserved.
UW t_plane_segment_count
segment count of coordinated move for T plane.
SL axis_b_motor_position
B axis motor position.
UW sample_number
sample number.
SL s_distance
distance traveled in coordinated move for S plane.
UB output_bank_9
general output bank 9 (outputs 73-80).
UB axis_b_reserved_1
Reserved.
UB input_bank_8
general input bank 8 (inputs 65-72).
UB input_bank_2
general input bank 2 (inputs 17-24).
UB output_bank_0
general output bank 0 (outputs 1-8).
UB input_bank_3
general input bank 3 (inputs 25-32).
UB output_bank_8
general output bank 8 (outputs 65-72).
UB output_bank_2
general output bank 2 (outputs 17-24).
UB output_bank_5
general output bank 5 (outputs 41-48).
SL axis_a_velocity
A axis velocity.
SL axis_c_aux_position
C axis auxiliary position.
UW axis_c_status
C axis status.
SL axis_d_aux_position
D axis auxiliary position.
SL axis_a_position_error
A axis position error.
UB input_bank_9
general input bank 9 (inputs 73-80).
UB output_bank_3
general output bank 3 (outputs 25-32).
SL axis_b_reference_position
B axis reference position.
UB axis_a_stop_code
A axis stop code.
SL axis_b_velocity
B axis velocity.
UB axis_a_switches
A axis switches.
SL axis_d_velocity
D axis velocity.
UB input_bank_0
general input bank 0 (inputs 1-8).
UB axis_a_reserved_0
Reserved.
UW axis_a_status
A axis status.
SL axis_c_position_error
C axis position error.
SL axis_d_motor_position
D axis motor position.
SL axis_c_velocity
C axis velocity.
UB output_bank_4
general output bank 4 (outputs 33-40).
SL axis_a_reference_position
A axis reference position.
UB output_bank_7
general output bank 7 (outputs 57-64).
UB axis_a_reserved_1
Reserved.
UB output_bank_6
general output bank 6 (outputs 49-56).
UB input_bank_5
general input bank 5 (inputs 41-48).
SL axis_b_position_error
B axis position error.
SL axis_d_position_error
D axis position error.
byte[] byte_array()
Returns the data record as a byte array and allows for access to individual bytes.
UB input_bank_7
general input bank 7 (inputs 57-64).
UB axis_d_reserved_1
Reserved.
SW axis_b_torque
B axis torque.
UB axis_d_stop_code
D axis stop code.
SL t_distance
distance traveled in coordinated move for T plane.
UB axis_d_reserved_0
Reserved.
UW axis_d_status
D axis status.
UW s_plane_segment_count
segment count of coordinated move for S plane.
SL axis_c_reference_position
C axis reference position.
UB axis_c_reserved_0
Reserved.
UB axis_c_stop_code
C axis stop code.
UB axis_c_switches
C axis switches.
UB input_bank_6
general input bank 6 (inputs 49-56).
SL axis_a_motor_position
A axis motor position.
UB output_bank_1
general output bank 1 (outputs 9-16).
UW s_plane_move_status
coordinated move status for S plane.
SL axis_d_reference_position
D axis reference position.
SW axis_c_torque
C axis torque.
SL axis_a_aux_position
A axis auxiliary position.
UB axis_b_switches
B axis switches.
UW t_plane_move_status
Coordinated move status for T plane.
UB input_bank_1
general input bank 1 (inputs 9-16).
UB axis_b_stop_code
B axis stop code.
UB axis_d_switches
D axis switches.
SL axis_c_motor_position
C axis motor position.
UB input_bank_4
general input bank 4 (inputs 33-40).
UW axis_b_status
B axis status.
SW axis_a_torque
A axis torque.
SL axis_b_aux_position
B axis auxiliary position.
SW axis_d_torque
D axis torque.
UB axis_b_reserved_0
Reserved.
Data record struct for DMC-1806 controller.
SL axis_h_motor_position
H axis motor position.
SL axis_f_reference_position
F axis reference position.
SL axis_f_aux_position
F axis auxiliary position.
UW axis_d_analog_in
D axis analog input.
UB axis_h_reserved_1
Reserved.
UB axis_a_stop_code
A axis stop code.
UW axis_e_status
E axis status.
UB axis_a_switches
A axis switches.
UB axis_f_switches
F axis switches.
SL t_distance
distance traveled in coordinated move for T plane.
SL axis_b_reference_position
B axis reference position.
UB input_bank_4
general input bank 4 (inputs 33-40).
UW axis_a_analog_in
A axis analog input.
SL axis_b_variable
B User-defined variable (ZA).
SL axis_b_torque
B axis torque.
SL axis_a_position_error
A axis position error.
SL axis_a_velocity
A axis velocity.
UB input_bank_7
general input bank 7 (inputs 57-64).
SL axis_g_motor_position
G axis motor position.
SL axis_b_position_error
B axis position error.
UW axis_f_analog_in
F axis analog input.
UB output_bank_6
general output bank 6 (outputs 49-56).
UW contour_buffer_available
Buffer space remaining, Contour Mode.
SL axis_g_velocity
G axis velocity.
SL axis_a_variable
A User-defined variable (ZA).
UB axis_b_stop_code
B axis stop code.
SL axis_d_variable
D User-defined variable (ZA).
UW s_plane_buffer_available
Buffer space remaining, S Plane.
UB axis_d_stop_code
D axis stop code.
SL axis_c_velocity
C axis velocity.
UB axis_c_switches
C axis switches.
SL axis_g_torque
G axis torque.
SL axis_c_motor_position
C axis motor position.
UW s_plane_move_status
coordinated move status for S plane.
UB input_bank_5
general input bank 5 (inputs 41-48).
UW axis_f_status
F axis status.
UB thread_status
thread status.
UB axis_f_stop_code
F axis stop code.
byte[] byte_array()
Returns the data record as a byte array and allows for access to individual bytes.
SL axis_e_position_error
E axis position error.
SL axis_c_variable
C User-defined variable (ZA).
UW axis_b_analog_in
B axis analog input.
SL axis_f_velocity
F axis velocity.
UW axis_h_status
H axis status.
UB axis_e_reserved_1
Reserved.
SL axis_e_variable
E User-defined variable (ZA).
SL axis_d_torque
D axis torque.
UB output_bank_7
general output bank 7 (outputs 57-64).
UW s_plane_segment_count
segment count of coordinated move for S plane.
SL axis_c_aux_position
C axis auxiliary position.
SL axis_g_position_error
G axis position error.
UB input_bank_9
general input bank 9 (inputs 73-80).
UB input_bank_0
general input bank 0 (inputs 1-8).
UW axis_c_analog_in
C axis analog input.
SL axis_b_velocity
B axis velocity.
UW axis_a_status
A axis status.
SL axis_d_reference_position
D axis reference position.
SL axis_h_torque
H axis torque.
UW t_plane_move_status
Coordinated move status for T plane.
UB axis_g_stop_code
G axis stop code.
UB output_bank_5
general output bank 5 (outputs 41-48).
UB output_bank_9
general output bank 9 (outputs 73-80).
SL axis_f_motor_position
F axis motor position.
SL axis_h_velocity
H axis velocity.
SL axis_d_aux_position
D axis auxiliary position.
SL axis_e_aux_position
E axis auxiliary position.
UB axis_g_reserved_0
Reserved.
UW t_plane_buffer_available
Buffer space remaining, T Plane.
UW axis_h_analog_in
H axis analog input.
UW sample_number
sample number.
UB output_bank_1
general output bank 1 (outputs 9-16).
SL axis_d_position_error
D axis position error.
UB output_bank_0
general output bank 0 (outputs 1-8).
SL axis_c_position_error
C axis position error.
UB axis_e_reserved_0
Reserved.
SL axis_a_motor_position
A axis motor position.
UW axis_d_status
D axis status.
SL axis_e_reference_position
E axis reference position.
UW axis_e_analog_in
E axis analog input.
SL axis_c_reference_position
C axis reference position.
UB axis_b_switches
B axis switches.
UB input_bank_1
general input bank 1 (inputs 9-16).
SL axis_f_position_error
F axis position error.
UW axis_b_status
B axis status.
UL contour_segment_count
Segment Count for Contour Mode.
SL axis_h_variable
H User-defined variable (ZA).
SL axis_h_aux_position
H axis auxiliary position.
UB input_bank_3
general input bank 3 (inputs 25-32).
SL axis_d_velocity
D axis velocity.
UB output_bank_4
general output bank 4 (outputs 33-40).
UW t_plane_segment_count
segment count of coordinated move for T plane.
UB axis_d_reserved_1
Reserved.
SL axis_g_aux_position
G axis auxiliary position.
SL axis_a_reference_position
A axis reference position.
UB input_bank_6
general input bank 6 (inputs 49-56).
UB axis_b_reserved_1
Reserved.
SL axis_f_torque
F axis torque.
UB axis_h_stop_code
H axis stop code.
SL axis_f_variable
F User-defined variable (ZA).
UW axis_c_status
C axis status.
UB axis_f_reserved_0
Reserved.
UW axis_g_status
G axis status.
UB axis_e_stop_code
E axis stop code.
SL axis_b_aux_position
B axis auxiliary position.
UB output_bank_8
general output bank 8 (outputs 65-72).
UB axis_b_reserved_0
Reserved.
UB axis_a_reserved_0
Reserved.
UB axis_g_reserved_1
Reserved.
SL axis_g_variable
G User-defined variable (ZA).
UB axis_f_reserved_1
Reserved.
UB input_bank_8
general input bank 8 (inputs 65-72).
SL axis_h_reference_position
H axis reference position.
SL axis_e_torque
E axis torque.
UW axis_g_analog_in
G axis analog input.
UB axis_c_reserved_0
Reserved.
UB output_bank_2
general output bank 2 (outputs 17-24).
SL axis_e_motor_position
E axis motor position.
UB axis_e_switches
E axis switches.
SL axis_e_velocity
E axis velocity.
UB output_bank_3
general output bank 3 (outputs 25-32).
UB axis_h_switches
H axis switches.
SL axis_c_torque
C axis torque.
UB input_bank_2
general input bank 2 (inputs 17-24).
SL axis_g_reference_position
G axis reference position.
UB axis_h_reserved_0
Reserved.
UB axis_c_stop_code
C axis stop code.
UB axis_d_switches
D axis switches.
SL s_distance
distance traveled in coordinated move for S plane.
SL axis_b_motor_position
B axis motor position.
SL axis_h_position_error
H axis position error.
SL axis_d_motor_position
D axis motor position.
UB axis_c_reserved_1
Reserved.
SL axis_a_torque
A axis torque.
UB axis_d_reserved_0
Reserved.
UB axis_a_reserved_1
Reserved.
UB axis_g_switches
G axis switches.
SL axis_a_aux_position
A axis auxiliary position.
Data record struct for DMC-2103 controllers.
UB axis_g_stop_code
G axis stop code.
UW s_plane_segment_count
segment count of coordinated move for S plane.
UB output_bank_0
general output bank 0 (outputs 1-8).
UB output_bank_4
general output bank 4 (outputs 33-40).
SW axis_g_torque
G axis torque.
UB output_bank_7
general output bank 7 (outputs 57-64).
UB output_bank_9
general output bank 9 (outputs 73-80).
SL axis_a_motor_position
A axis motor position.
SL axis_h_velocity
H axis velocity.
SL axis_f_position_error
F axis position error.
UW axis_d_analog_in
D axis analog input.
UB input_bank_3
general input bank 3 (inputs 25-32).
UB axis_e_switches
E axis switches.
UW axis_f_analog_in
F axis analog input.
SL axis_a_velocity
A axis velocity.
SL axis_b_aux_position
B axis auxiliary position.
UW axis_b_analog_in
B axis analog input.
SL axis_e_position_error
E axis position error.
SW axis_b_torque
B axis torque.
UW axis_d_status
D axis status.
SL s_distance
distance traveled in coordinated move for S plane.
UB output_bank_6
general output bank 6 (outputs 49-56).
UW sample_number
sample number.
UB header_1
2nd Byte of Header.
UW axis_g_analog_in
G axis analog input.
SL axis_h_position_error
H axis position error.
SL axis_b_motor_position
B axis motor position.
UW t_plane_segment_count
segment count of coordinated move for T plane.
UB input_bank_0
general input bank 0 (inputs 1-8).
UB axis_b_stop_code
B axis stop code.
UB output_bank_1
general output bank 1 (outputs 9-16).
SL axis_h_reference_position
H axis reference position.
SW axis_a_torque
A axis torque.
UW axis_b_status
B axis status.
SL axis_c_motor_position
C axis motor position.
UB input_bank_1
general input bank 1 (inputs 9-16).
SL axis_f_velocity
F axis velocity.
UB output_bank_3
general output bank 3 (outputs 25-32).
SL axis_f_motor_position
F axis motor position.
UW axis_g_status
G axis status.
UB input_bank_7
general input bank 7 (inputs 57-64).
UW axis_e_status
E axis status.
SL axis_f_aux_position
F axis auxiliary position.
SL axis_e_motor_position
E axis motor position.
SL axis_c_reference_position
C axis reference position.
SL axis_h_aux_position
H axis auxiliary position.
UB axis_h_switches
H axis switches.
SL axis_c_aux_position
C axis auxiliary position.
UB input_bank_9
general input bank 9 (inputs 73-80).
UB axis_a_switches
A axis switches.
SL axis_c_velocity
C axis velocity.
UW axis_h_analog_in
H axis analog input.
SL axis_d_motor_position
D axis motor position.
SL axis_b_position_error
B axis position error.
UB output_bank_2
general output bank 2 (outputs 17-24).
SL t_distance
distance traveled in coordinated move for T plane.
SW axis_e_torque
E axis torque.
SL axis_e_velocity
E axis velocity.
UW axis_f_status
F axis status.
SL axis_g_motor_position
G axis motor position.
UW axis_a_status
A axis status.
UB input_bank_5
general input bank 5 (inputs 41-48).
UW t_plane_move_status
Coordinated move status for T plane.
UW axis_a_analog_in
A axis analog input.
SL axis_a_aux_position
A axis auxiliary position.
UW axis_h_status
H axis status.
UB header_3
4th Byte of Header.
SL axis_d_aux_position
D axis auxiliary position.
UB axis_f_stop_code
F axis stop code.
UB input_bank_2
general input bank 2 (inputs 17-24).
SW axis_c_torque
C axis torque.
SL axis_g_reference_position
G axis reference position.
UB input_bank_6
general input bank 6 (inputs 49-56).
SL axis_f_reference_position
F axis reference position.
SL axis_d_position_error
D axis position error.
UB axis_c_stop_code
C axis stop code.
SW axis_h_torque
H axis torque.
UB axis_a_stop_code
A axis stop code.
UB axis_d_stop_code
D axis stop code.
UB axis_g_switches
G axis switches.
SL axis_g_position_error
G axis position error.
UW axis_c_status
C axis status.
SL axis_a_reference_position
A axis reference position.
SL axis_d_reference_position
D axis reference position.
SL axis_g_velocity
G axis velocity.
UB axis_d_switches
D axis switches.
UB output_bank_5
general output bank 5 (outputs 41-48).
UW s_plane_move_status
coordinated move status for S plane.
UB output_bank_8
general output bank 8 (outputs 65-72).
UB input_bank_8
general input bank 8 (inputs 65-72).
UB header_2
3rd Byte of Header.
SL axis_c_position_error
C axis position error.
SL axis_e_reference_position
E axis reference position.
UB axis_e_stop_code
E axis stop code.
UB general_status
general status
SL axis_a_position_error
A axis position error.
byte[] byte_array()
Returns the data record as a byte array and allows for access to individual bytes.
SL axis_d_velocity
D axis velocity.
SL axis_b_velocity
B axis velocity.
UW axis_c_analog_in
C axis analog input.
UB axis_f_switches
F axis switches.
UB axis_b_switches
B axis switches.
UB axis_h_stop_code
H axis stop code.
SL axis_e_aux_position
E axis auxiliary position.
UW axis_e_analog_in
E axis analog input.
SL axis_h_motor_position
H axis motor position.
UB axis_c_switches
C axis switches.
SW axis_f_torque
F axis torque.
SL axis_b_reference_position
B axis reference position.
UB input_bank_4
general input bank 4 (inputs 33-40).
SW axis_d_torque
D axis torque.
SL axis_g_aux_position
G axis auxiliary position.
UB header_0
1st Byte of Header.
Data record struct for DMC-30010 controllers.
UW contour_buffer_available
Buffer space remaining, Contour Mode.
UW s_plane_segment_count
segment count of coordinated move for S plane.
SL axis_a_motor_position
A axis motor position.
UB thread_status
thread status.
SL axis_a_variable
A User-defined variable (ZA).
UB header_1
2nd Byte of Header.
UB header_3
4th Byte of Header.
UB axis_a_reserved
Reserved.
UB input_bank_1
general input bank 1 (inputs 9-16).
SL axis_a_torque
A axis torque.
UL amplifier_status
Amplifier Status.
UB input_bank_0
general input bank 0 (inputs 1-8).
UW output_analog_2
Analog output 2.
SL s_distance
distance traveled in coordinated move for S plane.
UB output_bank_1
general output bank 1 (outputs 9-16).
UW axis_a_analog_in
A axis analog input.
UB output_bank_0
general output bank 0 (outputs 1-8).
UB header_0
1st Byte of Header.
UW axis_a_status
A axis status.
UW s_plane_move_status
coordinated move status for S plane.
UW s_plane_buffer_available
Buffer space remaining, S Plane.
SL axis_a_aux_position
A axis auxiliary position.
UB axis_a_stop_code
A axis stop code.
UW input_analog_2
Analog input 2. 1 is in axis data, see axis_a_analog_in.
UB axis_a_switches
A axis switches.
byte[] byte_array()
Returns the data record as a byte array and allows for access to individual bytes.
SL axis_a_reference_position
A axis reference position.
SL axis_a_position_error
A axis position error.
UB axis_a_halls
A Hall Input Status.
UB header_2
3rd Byte of Header.
UL contour_segment_count
Segment Count for Contour Mode.
UW output_analog_1
Analog output 1.
SL axis_a_velocity
A axis velocity.
UW sample_number
sample number.
Data record struct for DMC-4000 controllers, including 4000, 4200, 4103, and 500x0.
UB axis_g_halls
G Hall Input Status.
SL axis_f_torque
F axis torque.
SL axis_d_aux_position
D axis auxiliary position.
UB axis_d_reserved
Reserved.
SL axis_c_velocity
C axis velocity.
UW axis_f_analog_in
F axis analog input.
SL axis_d_reference_position
D axis reference position.
UW contour_buffer_available
Buffer space remaining, Contour Mode.
SL axis_a_velocity
A axis velocity.
UW s_plane_segment_count
segment count of coordinated move for S plane.
UB axis_g_switches
G axis switches.
UW s_plane_buffer_available
Buffer space remaining, S Plane.
UB output_bank_7
general output bank 7 (outputs 57-64).
UB output_bank_8
general output bank 8 (outputs 65-72).
UW axis_d_analog_in
D axis analog input.
UB output_bank_3
general output bank 3 (outputs 25-32).
SL axis_c_position_error
C axis position error.
UW axis_h_analog_in
H axis analog input.
SL axis_a_variable
A User-defined variable (ZA).
SL axis_g_velocity
G axis velocity.
SL axis_b_position_error
B axis position error.
UB axis_b_reserved
Reserved.
SL axis_f_aux_position
F axis auxiliary position.
SL axis_e_reference_position
E axis reference position.
UB axis_c_switches
C axis switches.
UW axis_c_status
C axis status.
SL axis_e_aux_position
E axis auxiliary position.
SL axis_g_torque
G axis torque.
UB thread_status
thread status
SL axis_e_velocity
E axis velocity.
UW t_plane_segment_count
segment count of coordinated move for T plane.
SL axis_d_position_error
D axis position error.
SL axis_d_torque
D axis torque.
UW axis_a_status
A axis status.
UW t_plane_buffer_available
Buffer space remaining, T Plane.
UB axis_a_reserved
Reserved.
SL axis_a_reference_position
A axis reference position.
UB output_bank_0
general output bank 0 (outputs 1-8).
UL contour_segment_count
Segment Count for Contour Mode.
SL axis_g_reference_position
G axis reference position.
SL axis_c_reference_position
C axis reference position.
UB ethernet_status_a
Ethernet Handle A Status.
SL axis_h_variable
H User-defined variable (ZA).
UB axis_e_reserved
Reserved.
SL axis_b_motor_position
B axis motor position.
UW axis_h_status
H axis status.
SL axis_g_aux_position
G axis auxiliary position.
UB input_bank_1
general input bank 1 (inputs 9-16).
SL axis_g_motor_position
G axis motor position.
UB axis_c_stop_code
C axis stop code.
SL axis_b_torque
B axis torque.
SL axis_f_reference_position
F axis reference position.
UB output_bank_9
general output bank 9 (outputs 73-80).
UB input_bank_6
general input bank 6 (inputs 49-56).
UB ethernet_status_f
Ethernet Handle F Status.
UB axis_b_halls
B Hall Input Status.
UB header_3
4th Byte of Header.
SL axis_f_motor_position
F axis motor position.
UB axis_b_stop_code
B axis stop code.
SL axis_d_motor_position
D axis motor position.
SL axis_h_motor_position
H axis motor position.
UB input_bank_8
general input bank 8 (inputs 65-72).
UB axis_b_switches
B axis switches.
SL axis_f_velocity
F axis velocity.
SL axis_a_aux_position
A axis auxiliary position.
UW axis_f_status
F axis status.
UW axis_e_status
E axis status.
UB header_2
3rd Byte of Header.
SL axis_c_variable
C User-defined variable (ZA).
UW axis_d_status
D axis status.
UL amplifier_status
Amplifier Status.
SL axis_b_reference_position
B axis reference position.
UB input_bank_7
general input bank 7 (inputs 57-64).
UB axis_f_reserved
Reserved.
SL axis_a_motor_position
A axis motor position.
SL axis_c_motor_position
C axis motor position.
UB axis_f_stop_code
F axis stop code.
SL axis_h_aux_position
H axis auxiliary position.
SL axis_c_torque
C axis torque.
UB ethernet_status_g
Ethernet Handle G Status.
SL axis_g_variable
G User-defined variable (ZA).
SL axis_b_velocity
B axis velocity.
UB axis_f_halls
F Hall Input Status.
UB output_bank_6
general output bank 6 (outputs 49-56).
UB input_bank_5
general input bank 5 (inputs 41-48).
SL axis_b_aux_position
B axis auxiliary position.
UB axis_d_halls
D Hall Input Status.
UB output_bank_4
general output bank 4 (outputs 33-40).
SL s_distance
distance traveled in coordinated move for S plane.
UB axis_g_stop_code
G axis stop code.
UW axis_c_analog_in
C axis analog input.
UW axis_b_analog_in
B axis analog input.
SL axis_h_position_error
H axis position error.
SL axis_e_variable
E User-defined variable (ZA).
UB axis_h_reserved
Reserved.
UW t_plane_move_status
Coordinated move status for T plane.
SL axis_e_motor_position
E axis motor position.
UW axis_g_status
G axis status.
SL axis_e_torque
E axis torque.
SL axis_e_position_error
E axis position error.
UB output_bank_5
general output bank 5 (outputs 41-48).
UB axis_c_reserved
Reserved.
UB axis_g_reserved
Reserved.
UB ethernet_status_h
Ethernet Handle H Status.
UW sample_number
sample number.
UB axis_e_stop_code
E axis stop code.
UB ethernet_status_b
Ethernet Handle B Status.
UB axis_h_halls
H Hall Input Status.
UW axis_e_analog_in
E axis analog input.
SL axis_a_position_error
A axis position error.
SL axis_a_torque
A axis torque.
UB output_bank_1
general output bank 1 (outputs 9-16).
UB axis_f_switches
F axis switches.
UB axis_e_halls
E Hall Input Status.
UB output_bank_2
general output bank 2 (outputs 17-24).
UB axis_e_switches
E axis switches.
UB ethernet_status_e
Ethernet Handle E Status.
UB axis_c_halls
C Hall Input Status.
UW axis_g_analog_in
G axis analog input.
UB header_1
2nd Byte of Header.
SL axis_g_position_error
G axis position error.
UB axis_a_switches
A axis switches.
SL axis_d_velocity
D axis velocity.
SL t_distance
distance traveled in coordinated move for T plane.
UB input_bank_0
general input bank 0 (inputs 1-8).
UB header_0
1st Byte of Header.
UB axis_d_stop_code
D axis stop code.
SL axis_h_reference_position
H axis reference position.
SL axis_f_variable
F User-defined variable (ZA).
SL axis_c_aux_position
C axis auxiliary position.
SL axis_h_velocity
H axis velocity.
UW axis_b_status
B axis status.
UB axis_h_switches
H axis switches.
UW axis_a_analog_in
A axis analog input.
UW s_plane_move_status
coordinated move status for S plane.
UB axis_h_stop_code
H axis stop code.
UB axis_d_switches
D axis switches.
UB input_bank_9
general input bank 9 (inputs 73-80).
SL axis_h_torque
H axis torque.
UB ethernet_status_d
Ethernet Handle D Status.
UB axis_a_halls
A Hall Input Status.
UB input_bank_2
general input bank 2 (inputs 17-24).
UB axis_a_stop_code
A axis stop code.
SL axis_d_variable
D User-defined variable (ZA).
byte[] byte_array()
Returns the data record as a byte array and allows for access to individual bytes.
SL axis_f_position_error
F axis position error.
UB ethernet_status_c
Ethernet Handle C Status.
UB input_bank_3
general input bank 3 (inputs 25-32).
SL axis_b_variable
B User-defined variable (ZA).
UB input_bank_4
general input bank 4 (inputs 33-40).
Data record struct for RIO-471xx and RIO-472xx PLCs. Includes encoder fields.
UW input_analog_0
Analog input 0.
UW input_analog_2
Analog input 2.
UW output_analog_6
Analog output 6.
UW output_analog_4
Analog output 4.
UW output_analog_5
Analog output 5.
UB header_2
3rd Byte of Header.
UW input_analog_7
Analog input 7.
byte[] byte_array()
Returns the data record as a byte array and allows for access to individual bytes.
UW output_analog_2
Analog output 2.
UW output_analog_7
Analog output 7.
UB general_status
General status.
UW input_analog_6
Analog input 6.
UW output_bank_0
Digital outputs 0-15;.
UW output_analog_1
Analog output 1.
UW input_analog_3
Analog input 3.
UL pulse_count_0
Pulse counter (see PC).
SL encoder_2
Encoder channel 2. Data only valid for parts with -BISS, -QUAD, or -SSI.
SL zc_variable
ZC User-defined variable (see ZC).
SL zd_variable
ZD User-defined variable (see ZD).
UW input_analog_4
Analog input 4.
UW input_analog_1
Analog input 1.
UW input_analog_5
Analog input 5.
SL encoder_0
Encoder channel 0. Data only valid for parts with -BISS, -QUAD, or -SSI.
UW input_bank_0
Digital inputs 0-15;.
UW output_analog_3
Analog output 3.
UB header_1
2nd Byte of Header.
SL encoder_1
Encoder channel 1. Data only valid for parts with -BISS, -QUAD, or -SSI.
UW output_analog_0
Analog output 0.
UB header_0
1st Byte of Header.
UB header_3
4th Byte of Header.
SL encoder_3
Encoder channel 3. Data only valid for parts with -BISS, -QUAD, or -SSI.
UW sample_number
Sample number.
Data record struct for RIO-47162.
SL encoder_1
Encoder channel 1. Data only valid for parts with -BISS, -QUAD, or -SSI.
UW input_analog_6
Analog input 6.
SL zc_variable
ZC User-defined variable (see ZC).
UW output_analog_6
Analog output 6.
SL encoder_2
Encoder channel 2. Data only valid for parts with -BISS, -QUAD, or -SSI.
UW sample_number
Sample number.
UB output_byte_1
Digital outputs 8-15.
UB general_status
General status.
UB input_byte_3
Digital inputs 24-31.
SL zd_variable
ZD User-defined variable (see ZD).
SL encoder_3
Encoder channel 3. Data only valid for parts with -BISS, -QUAD, or -SSI.
UW input_analog_1
Analog input 1.
UW output_analog_0
Analog output 0.
UB input_byte_2
Digital inputs 16-23.
UB header_3
4th Byte of Header.
UB output_byte_2
Digital outputs 16-23.
UL pulse_count_0
Pulse counter (see PC).
byte[] byte_array()
Returns the data record as a byte array and allows for access to individual bytes.
UW output_analog_5
Analog output 5.
UW output_analog_2
Analog output 2.
UB input_byte_4
Digital inputs 32-39.
UW input_analog_3
Analog input 3.
UB header_2
3rd Byte of Header.
UW output_analog_7
Analog output 7.
UW output_analog_4
Analog output 4.
UW input_analog_0
Analog input 0.
UB output_byte_0
Digital outputs 0-7.
UW input_analog_4
Analog input 4.
UB input_byte_1
Digital inputs 8-15.
UW input_analog_7
Analog input 7.
UW input_analog_5
Analog input 5.
UW output_analog_1
Analog output 1.
UW input_analog_2
Analog input 2.
SL encoder_0
Encoder channel 0. Data only valid for parts with -BISS, -QUAD, or -SSI.
UB header_1
2nd Byte of Header.
UB header_0
1st Byte of Header.
UB input_byte_0
Digital inputs 0-7.
UW output_analog_3
Analog output 3.
Data record struct for RIO-47300 with 24EX I/O daughter board.
UW output_analog_6
Analog output 6.
UW output_back_3
Digital outputs 40-47. Data only valid for parts with 24EXOUT.
UW input_bank_0
Digital inputs 0-15.
UW input_analog_5
Analog input 5.
UW input_analog_1
Analog input 1.
UW input_analog_4
Analog input 4.
UW input_analog_7
Analog input 7.
UW output_analog_3
Analog output 3.
UW output_bank_0
Digital outputs 0-15.
SL zc_variable
ZC User-defined variable (see ZC).
UW sample_number
Sample number.
UW input_bank_2
Digital inputs 24-39. Data only valid for parts with 24EXIN.
UW output_analog_0
Analog output 0.
UW output_bank_2
Digital outputs 24-39. Data only valid for parts with 24EXOUT.
UB general_status
General status.
UW input_bank_1
Digital inputs 16-23.
UB header_3
4th Byte of Header.
UW output_bank_1
Digital outputs 16-23.
UB header_1
2nd Byte of Header.
UW output_analog_2
Analog output 2.
SL zd_variable
ZD User-defined variable (see ZD).
byte[] byte_array()
Returns the data record as a byte array and allows for access to individual bytes.
UW output_analog_1
Analog output 1.
UW input_analog_0
Analog input 0.
UW input_analog_3
Analog input 3.
UW output_analog_7
Analog output 7.
UW output_analog_5
Analog output 5.
UB header_2
3rd Byte of Header.
UW output_analog_4
Analog output 4.
UW input_analog_2
Analog input 2.
UL pulse_count_0
Pulse counter (see PC)8.
UW input_analog_6
Analog input 6.
UB header_0
1st Byte of Header.
UW input_bank_3
Digital inputs 40-47. Data only valid for parts with 24EXIN.
Data record struct for RIO-47300. Includes encoder fields.
UW output_analog_0
Analog output 0.
UW input_analog_0
Analog input 0.
SL encoder_1
Encoder channel 1. Data only valid for parts with -BISS, -QUAD, or -SSI.
SL encoder_2
Encoder channel 2. Data only valid for parts with -BISS, -QUAD, or -SSI.
UW output_analog_4
Analog output 4.
UB header_3
4th Byte of Header.
UW input_bank_0
Digital inputs 0-15;.
UW input_analog_5
Analog input 5.
UW output_analog_2
Analog output 2.
UW input_analog_6
Analog input 6.
UW output_analog_6
Analog output 6.
UW input_bank_1
Digital inputs 16-23;.
UW output_bank_0
Digital outputs 0-15;.
UW input_analog_7
Analog input 7.
UB header_1
2nd Byte of Header.
SL encoder_0
Encoder channel 0. Data only valid for parts with -BISS, -QUAD, or -SSI.
SL zc_variable
ZC User-defined variable (see ZC).
UL pulse_count_0
Pulse counter (see PC).
SL encoder_3
Encoder channel 3. Data only valid for parts with -BISS, -QUAD, or -SSI.
UW output_analog_5
Analog output 5.
UW sample_number
Sample number.
UB header_0
1st Byte of Header.
UB header_2
3rd Byte of Header.
SL zd_variable
ZD User-defined variable (see ZD).
UW input_analog_2
Analog input 2.
UW input_analog_3
Analog input 3.
UW input_analog_4
Analog input 4.
byte[] byte_array()
Returns the data record as a byte array and allows for access to individual bytes.
UB general_status
General status.
UW output_analog_1
Analog output 1.
UW input_analog_1
Analog input 1.
UW output_analog_3
Analog output 3.
UW output_analog_7
Analog output 7.
UW output_bank_1
Digital outputs 16-23;.
Data record struct for DMC-52000 controller. Same as DMC-4000, with bank indicator added at byte 40.
UW axis_d_analog_in
D axis analog input.
SL axis_d_reference_position
D axis reference position.
SL axis_f_position_error
F axis position error.
SL axis_h_motor_position
H axis motor position.
SL axis_c_aux_position
C axis auxiliary position.
UB axis_h_reserved
Reserved.
SL axis_b_motor_position
B axis motor position.
UB input_bank_8
general input bank 8 (inputs 65-72).
SL axis_d_velocity
D axis velocity.
UB axis_f_switches
F axis switches.
UB axis_c_reserved
Reserved.
UW axis_h_status
H axis status.
SL axis_b_reference_position
B axis reference position.
SL axis_a_velocity
A axis velocity.
UB thread_status
thread status
UB output_bank_8
general output bank 8 (outputs 65-72).
SL axis_c_velocity
C axis velocity.
UB axis_g_reserved
Reserved.
UB axis_d_switches
D axis switches.
UB ethernet_status_e
Ethernet Handle E Status.
UB axis_a_switches
A axis switches.
SL axis_a_torque
A axis torque.
UB axis_b_stop_code
B axis stop code.
UB header_3
4th Byte of Header.
UB axis_g_switches
G axis switches.
UW axis_c_analog_in
C axis analog input.
UB axis_c_stop_code
C axis stop code.
UW s_plane_buffer_available
Buffer space remaining, S Plane.
SL axis_f_variable
F User-defined variable (ZA).
UB output_bank_9
general output bank 9 (outputs 73-80).
SL axis_g_velocity
G axis velocity.
UB axis_d_stop_code
D axis stop code.
SL axis_c_position_error
C axis position error.
UB input_bank_0
general input bank 0 (inputs 1-8).
UB header_1
2nd Byte of Header.
SL axis_f_motor_position
F axis motor position.
UB ethernet_status_d
Ethernet Handle D Status.
UW axis_e_analog_in
E axis analog input.
UB axis_g_halls
G Hall Input Status.
UB header_0
1st Byte of Header.
UB axis_b_halls
B Hall Input Status.
SL axis_c_reference_position
C axis reference position.
UB axis_f_stop_code
F axis stop code.
UB output_bank_5
general output bank 5 (outputs 41-48).
UB output_bank_7
general output bank 7 (outputs 57-64).
SL axis_h_position_error
H axis position error.
SL axis_b_velocity
B axis velocity.
UB axis_d_halls
D Hall Input Status.
UB axis_e_stop_code
E axis stop code.
SL axis_f_torque
F axis torque.
UB axis_e_halls
E Hall Input Status.
SL axis_d_motor_position
D axis motor position.
SL axis_g_variable
G User-defined variable (ZA).
UB header_2
3rd Byte of Header.
SL axis_a_reference_position
A axis reference position.
UW contour_buffer_available
Buffer space remaining, Contour Mode.
UW s_plane_segment_count
segment count of coordinated move for S plane.
SL axis_b_variable
B User-defined variable (ZA).
UB output_bank_1
general output bank 1 (outputs 9-16).
SL axis_e_aux_position
E axis auxiliary position.
SL t_distance
distance traveled in coordinated move for T plane.
UB axis_c_halls
C Hall Input Status.
SL axis_e_variable
E User-defined variable (ZA).
SL axis_a_motor_position
A axis motor position.
SL axis_h_aux_position
H axis auxiliary position.
UB input_bank_3
general input bank 3 (inputs 25-32).
UB input_bank_5
general input bank 5 (inputs 41-48).
SL axis_d_torque
D axis torque.
SL axis_f_aux_position
F axis auxiliary position.
UB axis_h_halls
H Hall Input Status.
UB axis_d_reserved
Reserved.
UB axis_b_switches
B axis switches.
SL axis_f_velocity
F axis velocity.
UB ethernet_status_b
Ethernet Handle B Status.
UB ethercat_bank
EtherCAT Bank Indicator.
SL axis_b_aux_position
B axis auxiliary position.
SL axis_d_position_error
D axis position error.
UW axis_b_analog_in
B axis analog input.
UL amplifier_status
Amplifier Status.
SL axis_d_aux_position
D axis auxiliary position.
SL axis_e_torque
E axis torque.
SL axis_c_variable
C User-defined variable (ZA).
SL axis_e_reference_position
E axis reference position.
UW axis_c_status
C axis status.
UB output_bank_3
general output bank 3 (outputs 25-32).
UW t_plane_buffer_available
Buffer space remaining, T Plane.
UB input_bank_7
general input bank 7 (inputs 57-64).
UB axis_e_reserved
Reserved.
SL axis_h_variable
H User-defined variable (ZA).
SL axis_f_reference_position
F axis reference position.
UB input_bank_1
general input bank 1 (inputs 9-16).
UB output_bank_2
general output bank 2 (outputs 17-24).
UW axis_f_status
F axis status.
SL axis_a_aux_position
A axis auxiliary position.
UB input_bank_2
general input bank 2 (inputs 17-24).
UW axis_h_analog_in
H axis analog input.
UW axis_g_status
G axis status.
SL axis_c_motor_position
C axis motor position.
SL axis_a_position_error
A axis position error.
UB axis_e_switches
E axis switches.
UB axis_a_reserved
Reserved.
UB input_bank_9
general input bank 9 (inputs 73-80).
UB axis_a_halls
A Hall Input Status.
UB axis_f_halls
F Hall Input Status.
UB output_bank_0
general output bank 0 (outputs 1-8).
UB input_bank_6
general input bank 6 (inputs 49-56).
UB ethernet_status_c
Ethernet Handle C Status.
UW axis_e_status
E axis status.
UW t_plane_move_status
Coordinated move status for T plane.
SL axis_h_velocity
H axis velocity.
SL axis_a_variable
A User-defined variable (ZA).
UB output_bank_4
general output bank 4 (outputs 33-40).
SL axis_c_torque
C axis torque.
SL axis_b_position_error
B axis position error.
byte[] byte_array()
Returns the data record as a byte array and allows for access to individual bytes.
UB axis_c_switches
C axis switches.
UW t_plane_segment_count
segment count of coordinated move for T plane.
UB ethernet_status_f
Ethernet Handle F Status.
SL axis_d_variable
D User-defined variable (ZA).
UB axis_b_reserved
Reserved.
SL s_distance
distance traveled in coordinated move for S plane.
UB output_bank_6
general output bank 6 (outputs 49-56).
SL axis_h_reference_position
H axis reference position.
UW axis_b_status
B axis status.
UB input_bank_4
general input bank 4 (inputs 33-40).
SL axis_b_torque
B axis torque.
SL axis_h_torque
H axis torque.
UL contour_segment_count
Segment Count for Contour Mode.
UW axis_g_analog_in
G axis analog input.
UB axis_h_switches
H axis switches.
SL axis_g_aux_position
G axis auxiliary position.
UB axis_a_stop_code
A axis stop code.
UW axis_a_status
A axis status.
SL axis_e_velocity
E axis velocity.
UW axis_f_analog_in
F axis analog input.
UB ethernet_status_h
Ethernet Handle H Status.
SL axis_g_motor_position
G axis motor position.
UB ethernet_status_g
Ethernet Handle G Status.
SL axis_g_position_error
G axis position error.
UB ethernet_status_a
Ethernet Handle A Status.
UW axis_a_analog_in
A axis analog input.
UW sample_number
sample number.
SL axis_e_position_error
E axis position error.
UB axis_f_reserved
Reserved.
UB axis_h_stop_code
H axis stop code.
SL axis_g_reference_position
G axis reference position.
UB axis_g_stop_code
G axis stop code.
SL axis_e_motor_position
E axis motor position.
UW s_plane_move_status
coordinated move status for S plane.
SL axis_g_torque
G axis torque.
UW axis_d_status
D axis status.
Data record union, containing all structs and a generic byte array accessor.