00001 00007 #ifndef I_210405D9_D9EF_484F_8258_BB29A1BBA217 00008 #define I_210405D9_D9EF_484F_8258_BB29A1BBA217 00009 00010 00011 //typedefs to keep the layout of the structs clean and matching the Galil user manual docs 00012 typedef unsigned char UB; //unsigned byte 00013 typedef unsigned short UW; //unsigned word 00014 typedef short SW; //signed word 00015 typedef int SL; //signed long 00016 typedef unsigned int UL; //unsigned long 00017 00018 #if defined(_MSC_VER) || defined(__GNUC__) 00019 #pragma pack(1) 00020 #else 00021 #error "Need to set structure packing for compiler" 00022 #endif 00023 00024 00025 #define GALILDATARECORDMAXLENGTH 512 00026 00028 struct GDataRecord4000 00029 { 00030 00031 /*Offset type name description*/ 00032 00033 /*00*/ UB header_0; 00034 /*01*/ UB header_1; 00035 /*02*/ UB header_2; 00036 /*03*/ UB header_3; 00037 00038 /*04-05*/ UW sample_number; 00039 00040 /*06*/ UB input_bank_0; 00041 /*07*/ UB input_bank_1; 00042 /*08*/ UB input_bank_2; 00043 /*09*/ UB input_bank_3; 00044 /*10*/ UB input_bank_4; 00045 /*11*/ UB input_bank_5; 00046 /*12*/ UB input_bank_6; 00047 /*13*/ UB input_bank_7; 00048 /*14*/ UB input_bank_8; 00049 /*15*/ UB input_bank_9; 00050 00051 /*16*/ UB output_bank_0; 00052 /*17*/ UB output_bank_1; 00053 /*18*/ UB output_bank_2; 00054 /*19*/ UB output_bank_3; 00055 /*20*/ UB output_bank_4; 00056 /*21*/ UB output_bank_5; 00057 /*22*/ UB output_bank_6; 00058 /*23*/ UB output_bank_7; 00059 /*24*/ UB output_bank_8; 00060 /*25*/ UB output_bank_9; 00061 00062 /*26-27*/ SW reserved_0; 00063 /*28-29*/ SW reserved_2; 00064 /*30-31*/ SW reserved_4; 00065 /*32-33*/ SW reserved_6; 00066 /*34-35*/ SW reserved_8; 00067 /*36-37*/ SW reserved_10; 00068 /*38-39*/ SW reserved_12; 00069 /*40-41*/ SW reserved_14; 00070 00071 /*42*/ UB ethernet_status_a; 00072 /*43*/ UB ethernet_status_b; 00073 /*44*/ UB ethernet_status_c; 00074 /*45*/ UB ethernet_status_d; 00075 /*46*/ UB ethernet_status_e; 00076 /*47*/ UB ethernet_status_f; 00077 /*48*/ UB ethernet_status_g; 00078 /*49*/ UB ethernet_status_h; 00079 00080 /*50*/ UB error_code; 00081 /*51*/ UB thread_status; 00082 /*52-55*/ UL amplifier_status; 00083 00084 /*56-59*/ UL contour_segment_count; 00085 /*60-61*/ UW contour_buffer_available; 00086 00087 /*62-63*/ UW s_plane_segment_count; 00088 /*64-65*/ UW s_plane_move_status; 00089 /*66-69*/ SL s_distance; 00090 /*70-71*/ UW s_plane_buffer_available; 00091 00092 /*72-73*/ UW t_plane_segment_count; 00093 /*74-75*/ UW t_plane_move_status; 00094 /*76-79*/ SL t_distance; 00095 /*80-81*/ UW t_plane_buffer_available; 00096 00097 /*82-83*/ UW axis_a_status; 00098 /*84*/ UB axis_a_switches; 00099 /*85*/ UB axis_a_stop_code; 00100 /*86-89*/ SL axis_a_reference_position; 00101 /*90-93*/ SL axis_a_motor_position; 00102 /*94-97*/ SL axis_a_position_error; 00103 /*98-101*/ SL axis_a_aux_position; 00104 /*102-105*/ SL axis_a_velocity; 00105 /*106-109*/ SL axis_a_torque; 00106 /*110-111*/ UW axis_a_analog_in; 00107 /*112*/ UB axis_a_halls; 00108 /*113*/ UB axis_a_reserved; 00109 /*114-117*/ SL axis_a_variable; 00110 00111 /*118-119*/ UW axis_b_status; 00112 /*120*/ UB axis_b_switches; 00113 /*121*/ UB axis_b_stop_code; 00114 /*122-125*/ SL axis_b_reference_position; 00115 /*126-129*/ SL axis_b_motor_position; 00116 /*130-133*/ SL axis_b_position_error; 00117 /*134-137*/ SL axis_b_aux_position; 00118 /*138-141*/ SL axis_b_velocity; 00119 /*142-145*/ SL axis_b_torque; 00120 /*146-147*/ UW axis_b_analog_in; 00121 /*148*/ UB axis_b_halls; 00122 /*149*/ UB axis_b_reserved; 00123 /*150-153*/ SL axis_b_variable; 00124 00125 /*154-155*/ UW axis_c_status; 00126 /*156*/ UB axis_c_switches; 00127 /*157*/ UB axis_c_stop_code; 00128 /*158-161*/ SL axis_c_reference_position; 00129 /*162-165*/ SL axis_c_motor_position; 00130 /*166-169*/ SL axis_c_position_error; 00131 /*170-173*/ SL axis_c_aux_position; 00132 /*174-177*/ SL axis_c_velocity; 00133 /*178-181*/ SL axis_c_torque; 00134 /*182-183*/ UW axis_c_analog_in; 00135 /*184*/ UB axis_c_halls; 00136 /*185*/ UB axis_c_reserved; 00137 /*186-189*/ SL axis_c_variable; 00138 00139 /*190-191*/ UW axis_d_status; 00140 /*192*/ UB axis_d_switches; 00141 /*193*/ UB axis_d_stop_code; 00142 /*194-197*/ SL axis_d_reference_position; 00143 /*198-201*/ SL axis_d_motor_position; 00144 /*202-205*/ SL axis_d_position_error; 00145 /*206-209*/ SL axis_d_aux_position; 00146 /*210-213*/ SL axis_d_velocity; 00147 /*214-217*/ SL axis_d_torque; 00148 /*218-219*/ UW axis_d_analog_in; 00149 /*220*/ UB axis_d_halls; 00150 /*221*/ UB axis_d_reserved; 00151 /*222-225*/ SL axis_d_variable; 00152 00153 /*226-227*/ UW axis_e_status; 00154 /*228*/ UB axis_e_switches; 00155 /*229*/ UB axis_e_stop_code; 00156 /*230-233*/ SL axis_e_reference_position; 00157 /*234-237*/ SL axis_e_motor_position; 00158 /*238-241*/ SL axis_e_position_error; 00159 /*242-245*/ SL axis_e_aux_position; 00160 /*246-249*/ SL axis_e_velocity; 00161 /*250-253*/ SL axis_e_torque; 00162 /*254-255*/ UW axis_e_analog_in; 00163 /*256*/ UB axis_e_halls; 00164 /*257*/ UB axis_e_reserved; 00165 /*258-261*/ SL axis_e_variable; 00166 00167 /*262-263*/ UW axis_f_status; 00168 /*264*/ UB axis_f_switches; 00169 /*265*/ UB axis_f_stop_code; 00170 /*266-269*/ SL axis_f_reference_position; 00171 /*270-273*/ SL axis_f_motor_position; 00172 /*274-277*/ SL axis_f_position_error; 00173 /*278-281*/ SL axis_f_aux_position; 00174 /*282-285*/ SL axis_f_velocity; 00175 /*286-289*/ SL axis_f_torque; 00176 /*290-291*/ UW axis_f_analog_in; 00177 /*292*/ UB axis_f_halls; 00178 /*293*/ UB axis_f_reserved; 00179 /*294-297*/ SL axis_f_variable; 00180 00181 /*298-299*/ UW axis_g_status; 00182 /*300*/ UB axis_g_switches; 00183 /*301*/ UB axis_g_stop_code; 00184 /*302-305*/ SL axis_g_reference_position; 00185 /*306-309*/ SL axis_g_motor_position; 00186 /*310-313*/ SL axis_g_position_error; 00187 /*314-317*/ SL axis_g_aux_position; 00188 /*318-321*/ SL axis_g_velocity; 00189 /*322-325*/ SL axis_g_torque; 00190 /*326-327*/ UW axis_g_analog_in; 00191 /*328*/ UB axis_g_halls; 00192 /*329*/ UB axis_g_reserved; 00193 /*330-333*/ SL axis_g_variable; 00194 00195 /*334-335*/ UW axis_h_status; 00196 /*336*/ UB axis_h_switches; 00197 /*337*/ UB axis_h_stop_code; 00198 /*338-341*/ SL axis_h_reference_position; 00199 /*342-345*/ SL axis_h_motor_position; 00200 /*346-349*/ SL axis_h_position_error; 00201 /*350-353*/ SL axis_h_aux_position; 00202 /*354-357*/ SL axis_h_velocity; 00203 /*358-361*/ SL axis_h_torque; 00204 /*362-363*/ UW axis_h_analog_in; 00205 /*364*/ UB axis_h_halls; 00206 /*365*/ UB axis_h_reserved; 00207 /*366-369*/ SL axis_h_variable; 00208 }; //DataRecord4000 00209 00211 00218 struct GDataRecord1806 00219 { 00220 /*Offset type name description*/ 00221 00222 /*00-01*/ UW sample_number; 00223 00224 /*02*/ UB input_bank_0; 00225 /*03*/ UB input_bank_1; 00226 /*04*/ UB input_bank_2; 00227 /*05*/ UB input_bank_3; 00228 /*06*/ UB input_bank_4; 00229 /*07*/ UB input_bank_5; 00230 /*08*/ UB input_bank_6; 00231 /*09*/ UB input_bank_7; 00232 /*10*/ UB input_bank_8; 00233 /*11*/ UB input_bank_9; 00234 00235 /*12*/ UB output_bank_0; 00236 /*13*/ UB output_bank_1; 00237 /*14*/ UB output_bank_2; 00238 /*15*/ UB output_bank_3; 00239 /*16*/ UB output_bank_4; 00240 /*17*/ UB output_bank_5; 00241 /*18*/ UB output_bank_6; 00242 /*19*/ UB output_bank_7; 00243 /*20*/ UB output_bank_8; 00244 /*21*/ UB output_bank_9; 00245 00246 /*22-23*/ SW reserved_0; 00247 /*24-25*/ SW reserved_2; 00248 /*26-27*/ SW reserved_4; 00249 /*28-29*/ SW reserved_6; 00250 /*30-31*/ SW reserved_8; 00251 /*32-33*/ SW reserved_10; 00252 /*34-35*/ SW reserved_12; 00253 /*36-37*/ SW reserved_14; 00254 00255 /*38*/ UB reserved_16; 00256 /*39*/ UB reserved_17; 00257 /*40*/ UB reserved_18; 00258 /*41*/ UB reserved_19; 00259 /*42*/ UB reserved_20; 00260 /*43*/ UB reserved_21; 00261 /*44*/ UB reserved_22; 00262 /*45*/ UB reserved_23; 00263 00264 /*46*/ UB error_code; 00265 /*47*/ UB thread_status; 00266 /*48-51*/ UL reserved_24; 00267 00268 /*52-55*/ UL contour_segment_count; 00269 /*56-57*/ UW contour_buffer_available; 00270 00271 /*58-59*/ UW s_plane_segment_count; 00272 /*60-61*/ UW s_plane_move_status; 00273 /*62-65*/ SL s_distance; 00274 /*66-67*/ UW s_plane_buffer_available; 00275 00276 /*68-69*/ UW t_plane_segment_count; 00277 /*70-71*/ UW t_plane_move_status; 00278 /*72-75*/ SL t_distance; 00279 /*76-77*/ UW t_plane_buffer_available; 00280 00281 /*78-79*/ UW axis_a_status; 00282 /*80*/ UB axis_a_switches; 00283 /*81*/ UB axis_a_stop_code; 00284 /*82-85*/ SL axis_a_reference_position; 00285 /*86-89*/ SL axis_a_motor_position; 00286 /*90-93*/ SL axis_a_position_error; 00287 /*94-97*/ SL axis_a_aux_position; 00288 /*98-101*/ SL axis_a_velocity; 00289 /*102-105*/ SL axis_a_torque; 00290 /*106-107*/ UW axis_a_analog_in; 00291 /*108*/ UB axis_a_reserved_0; 00292 /*109*/ UB axis_a_reserved_1; 00293 /*110-113*/ SL axis_a_variable; 00294 00295 /*114-115*/ UW axis_b_status; 00296 /*116*/ UB axis_b_switches; 00297 /*117*/ UB axis_b_stop_code; 00298 /*118-121*/ SL axis_b_reference_position; 00299 /*122-125*/ SL axis_b_motor_position; 00300 /*126-129*/ SL axis_b_position_error; 00301 /*130-133*/ SL axis_b_aux_position; 00302 /*134-137*/ SL axis_b_velocity; 00303 /*138-141*/ SL axis_b_torque; 00304 /*142-143*/ UW axis_b_analog_in; 00305 /*144*/ UB axis_b_reserved_0; 00306 /*145*/ UB axis_b_reserved_1; 00307 /*146-149*/ SL axis_b_variable; 00308 00309 /*150-151*/ UW axis_c_status; 00310 /*152*/ UB axis_c_switches; 00311 /*153*/ UB axis_c_stop_code; 00312 /*154-157*/ SL axis_c_reference_position; 00313 /*158-161*/ SL axis_c_motor_position; 00314 /*162-165*/ SL axis_c_position_error; 00315 /*166-169*/ SL axis_c_aux_position; 00316 /*170-173*/ SL axis_c_velocity; 00317 /*174-177*/ SL axis_c_torque; 00318 /*178-179*/ UW axis_c_analog_in; 00319 /*180*/ UB axis_c_reserved_0; 00320 /*181*/ UB axis_c_reserved_1; 00321 /*182-185*/ SL axis_c_variable; 00322 00323 /*186-187*/ UW axis_d_status; 00324 /*188*/ UB axis_d_switches; 00325 /*189*/ UB axis_d_stop_code; 00326 /*190-193*/ SL axis_d_reference_position; 00327 /*194-197*/ SL axis_d_motor_position; 00328 /*198-201*/ SL axis_d_position_error; 00329 /*202-205*/ SL axis_d_aux_position; 00330 /*206-209*/ SL axis_d_velocity; 00331 /*210-213*/ SL axis_d_torque; 00332 /*214-215*/ UW axis_d_analog_in; 00333 /*216*/ UB axis_d_reserved_0; 00334 /*217*/ UB axis_d_reserved_1; 00335 /*218-221*/ SL axis_d_variable; 00336 00337 /*222-223*/ UW axis_e_status; 00338 /*224*/ UB axis_e_switches; 00339 /*225*/ UB axis_e_stop_code; 00340 /*226-229*/ SL axis_e_reference_position; 00341 /*230-233*/ SL axis_e_motor_position; 00342 /*234-237*/ SL axis_e_position_error; 00343 /*238-241*/ SL axis_e_aux_position; 00344 /*242-245*/ SL axis_e_velocity; 00345 /*256-249*/ SL axis_e_torque; 00346 /*250-251*/ UW axis_e_analog_in; 00347 /*252*/ UB axis_e_reserved_0; 00348 /*253*/ UB axis_e_reserved_1; 00349 /*254-257*/ SL axis_e_variable; 00350 00351 /*258-259*/ UW axis_f_status; 00352 /*260*/ UB axis_f_switches; 00353 /*261*/ UB axis_f_stop_code; 00354 /*262-265*/ SL axis_f_reference_position; 00355 /*266-269*/ SL axis_f_motor_position; 00356 /*270-273*/ SL axis_f_position_error; 00357 /*274-277*/ SL axis_f_aux_position; 00358 /*278-281*/ SL axis_f_velocity; 00359 /*282-285*/ SL axis_f_torque; 00360 /*286-287*/ UW axis_f_analog_in; 00361 /*288*/ UB axis_f_reserved_0; 00362 /*289*/ UB axis_f_reserved_1; 00363 /*290-293*/ SL axis_f_variable; 00364 00365 /*294-295*/ UW axis_g_status; 00366 /*296*/ UB axis_g_switches; 00367 /*297*/ UB axis_g_stop_code; 00368 /*298-301*/ SL axis_g_reference_position; 00369 /*302-305*/ SL axis_g_motor_position; 00370 /*306-309*/ SL axis_g_position_error; 00371 /*310-313*/ SL axis_g_aux_position; 00372 /*314-317*/ SL axis_g_velocity; 00373 /*318-321*/ SL axis_g_torque; 00374 /*322-323*/ UW axis_g_analog_in; 00375 /*324*/ UB axis_g_reserved_0; 00376 /*325*/ UB axis_g_reserved_1; 00377 /*326-329*/ SL axis_g_variable; 00378 00379 /*330-331*/ UW axis_h_status; 00380 /*332*/ UB axis_h_switches; 00381 /*333*/ UB axis_h_stop_code; 00382 /*334-337*/ SL axis_h_reference_position; 00383 /*338-341*/ SL axis_h_motor_position; 00384 /*342-345*/ SL axis_h_position_error; 00385 /*346-349*/ SL axis_h_aux_position; 00386 /*350-353*/ SL axis_h_velocity; 00387 /*354-357*/ SL axis_h_torque; 00388 /*358-359*/ UW axis_h_analog_in; 00389 /*360*/ UB axis_h_reserved_0; 00390 /*361*/ UB axis_h_reserved_1; 00391 /*362-365*/ SL axis_h_variable; 00392 }; //DataRecord1806 00393 00395 struct GDataRecord2103 00396 { 00397 00398 /*Offset type name description*/ 00399 00400 /*00*/ UB header_0; 00401 /*01*/ UB header_1; 00402 /*02*/ UB header_2; 00403 /*03*/ UB header_3; 00404 00405 /*04-05*/ UW sample_number; 00406 00407 /*06*/ UB input_bank_0; 00408 /*07*/ UB input_bank_1; 00409 /*08*/ UB input_bank_2; 00410 /*09*/ UB input_bank_3; 00411 /*10*/ UB input_bank_4; 00412 /*11*/ UB input_bank_5; 00413 /*12*/ UB input_bank_6; 00414 /*13*/ UB input_bank_7; 00415 /*14*/ UB input_bank_8; 00416 /*15*/ UB input_bank_9; 00417 00418 /*16*/ UB output_bank_0; 00419 /*17*/ UB output_bank_1; 00420 /*18*/ UB output_bank_2; 00421 /*19*/ UB output_bank_3; 00422 /*20*/ UB output_bank_4; 00423 /*21*/ UB output_bank_5; 00424 /*22*/ UB output_bank_6; 00425 /*23*/ UB output_bank_7; 00426 /*24*/ UB output_bank_8; 00427 /*25*/ UB output_bank_9; 00428 00429 /*26*/ UB error_code; 00430 /*27*/ UB general_status; 00431 00432 /*28-29*/ UW s_plane_segment_count; 00433 /*30-31*/ UW s_plane_move_status; 00434 /*32-35*/ SL s_distance; 00435 00436 /*36-37*/ UW t_plane_segment_count; 00437 /*38-39*/ UW t_plane_move_status; 00438 /*40-43*/ SL t_distance; 00439 00440 /*44-45*/ UW axis_a_status; 00441 /*46*/ UB axis_a_switches; 00442 /*47*/ UB axis_a_stop_code; 00443 /*48-51*/ SL axis_a_reference_position; 00444 /*52-55*/ SL axis_a_motor_position; 00445 /*56-59*/ SL axis_a_position_error; 00446 /*60-63*/ SL axis_a_aux_position; 00447 /*64-67*/ SL axis_a_velocity; 00448 /*68-69*/ SW axis_a_torque; 00449 /*70-71*/ UW axis_a_analog_in; 00450 00451 /*72-73*/ UW axis_b_status; 00452 /*74*/ UB axis_b_switches; 00453 /*75*/ UB axis_b_stop_code; 00454 /*76-79*/ SL axis_b_reference_position; 00455 /*80-83*/ SL axis_b_motor_position; 00456 /*84-87*/ SL axis_b_position_error; 00457 /*88-91*/ SL axis_b_aux_position; 00458 /*92-95*/ SL axis_b_velocity; 00459 /*96-97*/ SW axis_b_torque; 00460 /*98-99*/ UW axis_b_analog_in; 00461 00462 /*100-101*/ UW axis_c_status; 00463 /*102*/ UB axis_c_switches; 00464 /*103*/ UB axis_c_stop_code; 00465 /*104-107*/ SL axis_c_reference_position; 00466 /*108-111*/ SL axis_c_motor_position; 00467 /*112-115*/ SL axis_c_position_error; 00468 /*116-119*/ SL axis_c_aux_position; 00469 /*120-123*/ SL axis_c_velocity; 00470 /*124-125*/ SW axis_c_torque; 00471 /*126-127*/ UW axis_c_analog_in; 00472 00473 /*128-129*/ UW axis_d_status; 00474 /*130*/ UB axis_d_switches; 00475 /*131*/ UB axis_d_stop_code; 00476 /*132-135*/ SL axis_d_reference_position; 00477 /*136-139*/ SL axis_d_motor_position; 00478 /*140-143*/ SL axis_d_position_error; 00479 /*144-147*/ SL axis_d_aux_position; 00480 /*148-151*/ SL axis_d_velocity; 00481 /*152-153*/ SW axis_d_torque; 00482 /*154-155*/ UW axis_d_analog_in; 00483 00484 /*156-157*/ UW axis_e_status; 00485 /*158*/ UB axis_e_switches; 00486 /*159*/ UB axis_e_stop_code; 00487 /*160-163*/ SL axis_e_reference_position; 00488 /*164-167*/ SL axis_e_motor_position; 00489 /*168-171*/ SL axis_e_position_error; 00490 /*172-175*/ SL axis_e_aux_position; 00491 /*176-179*/ SL axis_e_velocity; 00492 /*180-181*/ SW axis_e_torque; 00493 /*182-183*/ UW axis_e_analog_in; 00494 00495 /*184-185*/ UW axis_f_status; 00496 /*186*/ UB axis_f_switches; 00497 /*187*/ UB axis_f_stop_code; 00498 /*188-191*/ SL axis_f_reference_position; 00499 /*192-195*/ SL axis_f_motor_position; 00500 /*196-199*/ SL axis_f_position_error; 00501 /*200-203*/ SL axis_f_aux_position; 00502 /*204-207*/ SL axis_f_velocity; 00503 /*208-209*/ SW axis_f_torque; 00504 /*210-211*/ UW axis_f_analog_in; 00505 00506 /*212-213*/ UW axis_g_status; 00507 /*214*/ UB axis_g_switches; 00508 /*215*/ UB axis_g_stop_code; 00509 /*216-219*/ SL axis_g_reference_position; 00510 /*220-223*/ SL axis_g_motor_position; 00511 /*224-227*/ SL axis_g_position_error; 00512 /*228-231*/ SL axis_g_aux_position; 00513 /*232-235*/ SL axis_g_velocity; 00514 /*236-237*/ SW axis_g_torque; 00515 /*238-239*/ UW axis_g_analog_in; 00516 00517 /*240-241*/ UW axis_h_status; 00518 /*242*/ UB axis_h_switches; 00519 /*243*/ UB axis_h_stop_code; 00520 /*244-247*/ SL axis_h_reference_position; 00521 /*248-251*/ SL axis_h_motor_position; 00522 /*252-255*/ SL axis_h_position_error; 00523 /*256-259*/ SL axis_h_aux_position; 00524 /*260-263*/ SL axis_h_velocity; 00525 /*264-265*/ SW axis_h_torque; 00526 /*266-267*/ UW axis_h_analog_in; 00527 }; //DataRecord2013 00528 00530 struct GDataRecord1802 00531 { 00532 00533 /*Offset type name description*/ 00534 00535 /*00*/ UB header_0; 00536 /*01*/ UB header_1; 00537 /*02*/ UB header_2; 00538 /*03*/ UB header_3; 00539 00540 /*04-05*/ UW sample_number; 00541 00542 /*06*/ UB input_bank_0; 00543 /*07*/ UB input_bank_1; 00544 /*08*/ UB input_bank_2; 00545 /*09*/ UB input_bank_3; 00546 /*10*/ UB input_bank_4; 00547 /*11*/ UB input_bank_5; 00548 /*12*/ UB input_bank_6; 00549 /*13*/ UB input_bank_7; 00550 /*14*/ UB input_bank_8; 00551 /*15*/ UB input_bank_9; 00552 00553 /*16*/ UB output_bank_0; 00554 /*17*/ UB output_bank_1; 00555 /*18*/ UB output_bank_2; 00556 /*19*/ UB output_bank_3; 00557 /*20*/ UB output_bank_4; 00558 /*21*/ UB output_bank_5; 00559 /*22*/ UB output_bank_6; 00560 /*23*/ UB output_bank_7; 00561 /*24*/ UB output_bank_8; 00562 /*25*/ UB output_bank_9; 00563 00564 /*26*/ UB error_code; 00565 /*27*/ UB general_status; 00566 00567 /*28-29*/ UW s_plane_segment_count; 00568 /*30-31*/ UW s_plane_move_status; 00569 /*32-35*/ SL s_distance; 00570 00571 /*36-37*/ UW t_plane_segment_count; 00572 /*38-39*/ UW t_plane_move_status; 00573 /*40-43*/ SL t_distance; 00574 00575 /*44-45*/ UW axis_a_status; 00576 /*46*/ UB axis_a_switches; 00577 /*47*/ UB axis_a_stop_code; 00578 /*48-51*/ SL axis_a_reference_position; 00579 /*52-55*/ SL axis_a_motor_position; 00580 /*56-59*/ SL axis_a_position_error; 00581 /*60-63*/ SL axis_a_aux_position; 00582 /*64-67*/ SL axis_a_velocity; 00583 /*68-69*/ SW axis_a_torque; 00584 00585 /*70-71*/ UW axis_b_status; 00586 /*72*/ UB axis_b_switches; 00587 /*73*/ UB axis_b_stop_code; 00588 /*74-77*/ SL axis_b_reference_position; 00589 /*78-81*/ SL axis_b_motor_position; 00590 /*82-85*/ SL axis_b_position_error; 00591 /*86-89*/ SL axis_b_aux_position; 00592 /*90-93*/ SL axis_b_velocity; 00593 /*94-95*/ SW axis_b_torque; 00594 00595 /*96-97*/ UW axis_c_status; 00596 /*98*/ UB axis_c_switches; 00597 /*99*/ UB axis_c_stop_code; 00598 /*100-103*/ SL axis_c_reference_position; 00599 /*104-107*/ SL axis_c_motor_position; 00600 /*108-111*/ SL axis_c_position_error; 00601 /*112-115*/ SL axis_c_aux_position; 00602 /*116-119*/ SL axis_c_velocity; 00603 /*120-121*/ SW axis_c_torque; 00604 00605 /*122-123*/ UW axis_d_status; 00606 /*124*/ UB axis_d_switches; 00607 /*125*/ UB axis_d_stop_code; 00608 /*126-129*/ SL axis_d_reference_position; 00609 /*130-133*/ SL axis_d_motor_position; 00610 /*134-137*/ SL axis_d_position_error; 00611 /*138-141*/ SL axis_d_aux_position; 00612 /*142-145*/ SL axis_d_velocity; 00613 /*146-147*/ SW axis_d_torque; 00614 00615 /*148-149*/ UW axis_e_status; 00616 /*150*/ UB axis_e_switches; 00617 /*151*/ UB axis_e_stop_code; 00618 /*152-155*/ SL axis_e_reference_position; 00619 /*156-159*/ SL axis_e_motor_position; 00620 /*160-163*/ SL axis_e_position_error; 00621 /*164-167*/ SL axis_e_aux_position; 00622 /*168-171*/ SL axis_e_velocity; 00623 /*172-173*/ SW axis_e_torque; 00624 00625 /*174-175*/ UW axis_f_status; 00626 /*176*/ UB axis_f_switches; 00627 /*177*/ UB axis_f_stop_code; 00628 /*178-181*/ SL axis_f_reference_position; 00629 /*182-185*/ SL axis_f_motor_position; 00630 /*186-189*/ SL axis_f_position_error; 00631 /*190-193*/ SL axis_f_aux_position; 00632 /*194-197*/ SL axis_f_velocity; 00633 /*198-199*/ SW axis_f_torque; 00634 00635 /*200-201*/ UW axis_g_status; 00636 /*202*/ UB axis_g_switches; 00637 /*203*/ UB axis_g_stop_code; 00638 /*204-207*/ SL axis_g_reference_position; 00639 /*208-211*/ SL axis_g_motor_position; 00640 /*212-215*/ SL axis_g_position_error; 00641 /*216-219*/ SL axis_g_aux_position; 00642 /*220-223*/ SL axis_g_velocity; 00643 /*224-225*/ SW axis_g_torque; 00644 00645 /*226-227*/ UW axis_h_status; 00646 /*228*/ UB axis_h_switches; 00647 /*229*/ UB axis_h_stop_code; 00648 /*230-233*/ SL axis_h_reference_position; 00649 /*234-237*/ SL axis_h_motor_position; 00650 /*238-241*/ SL axis_h_position_error; 00651 /*242-245*/ SL axis_h_aux_position; 00652 /*246-249*/ SL axis_h_velocity; 00653 /*250-251*/ SW axis_h_torque; 00654 }; //DataRecord1802 00655 00657 struct GDataRecord30000 00658 { 00659 00660 /*Offset type name description*/ 00661 00662 /*00*/ UB header_0; 00663 /*01*/ UB header_1; 00664 /*02*/ UB header_2; 00665 /*03*/ UB header_3; 00666 00667 /*04-05*/ UW sample_number; 00668 00669 /*06*/ UB input_bank_0; 00670 /*07*/ UB input_bank_1; 00671 00672 /*08*/ UB output_bank_0; 00673 /*09*/ UB output_bank_1; 00674 00675 /*10*/ UB error_code; 00676 /*11*/ UB thread_status; 00677 00678 /*12-13*/ UW input_analog_2; 00679 00680 /*14-15*/ UW output_analog_1; 00681 /*16-17*/ UW output_analog_2; 00682 00683 /*18-21*/ UL amplifier_status; 00684 00685 /*22-25*/ UL contour_segment_count; 00686 /*26-27*/ UW contour_buffer_available; 00687 00688 /*28-29*/ UW s_plane_segment_count; 00689 /*30-31*/ UW s_plane_move_status; 00690 /*32-35*/ SL s_distance; 00691 /*36-37*/ UW s_plane_buffer_available; 00692 00693 /*38-39*/ UW axis_a_status; 00694 /*40*/ UB axis_a_switches; 00695 /*41*/ UB axis_a_stop_code; 00696 /*42-45*/ SL axis_a_reference_position; 00697 /*46-49*/ SL axis_a_motor_position; 00698 /*50-53*/ SL axis_a_position_error; 00699 /*54-57*/ SL axis_a_aux_position; 00700 /*58-61*/ SL axis_a_velocity; 00701 /*62-65*/ SL axis_a_torque; 00702 /*66-67*/ UW axis_a_analog_in; 00703 /*68*/ UB axis_a_halls; 00704 /*69*/ UB axis_a_reserved; 00705 /*70-73*/ SL axis_a_variable; 00706 }; //DataRecord30000 00707 00709 struct GDataRecord47000_ENC 00710 { 00711 00712 /*Offset type name description*/ 00713 00714 /*00*/ UB header_0; 00715 /*01*/ UB header_1; 00716 /*02*/ UB header_2; 00717 /*03*/ UB header_3; 00718 00719 /*04-05*/ UW sample_number; 00720 /*06*/ UB error_code; 00721 /*07*/ UB general_status; 00722 00723 /*08-09*/ UW output_analog_0; 00724 /*10-11*/ UW output_analog_1; 00725 /*12-13*/ UW output_analog_2; 00726 /*14-15*/ UW output_analog_3; 00727 /*16-17*/ UW output_analog_4; 00728 /*18-19*/ UW output_analog_5; 00729 /*20-21*/ UW output_analog_6; 00730 /*22-23*/ UW output_analog_7; 00731 00732 /*24-25*/ UW input_analog_0; 00733 /*26-27*/ UW input_analog_1; 00734 /*28-29*/ UW input_analog_2; 00735 /*30-31*/ UW input_analog_3; 00736 /*32-33*/ UW input_analog_4; 00737 /*34-35*/ UW input_analog_5; 00738 /*36-37*/ UW input_analog_6; 00739 /*38-39*/ UW input_analog_7; 00740 00741 /*40-41*/ UW output_bank_0; 00742 00743 /*42-43*/ UW input_bank_0; 00744 00745 /*44-47*/ UL pulse_count_0; 00746 /*48-51*/ SL zc_variable; 00747 /*52-55*/ SL zd_variable; 00748 00749 /*56-59*/ SL encoder_0; 00750 /*60-63*/ SL encoder_1; 00751 /*64-67*/ SL encoder_2; 00752 /*68-71*/ SL encoder_3; 00753 00754 }; //GDataRecord47000_ENC 00755 00757 struct GDataRecord47300_ENC 00758 { 00759 00760 /*Offset type name description*/ 00761 00762 /*00*/ UB header_0; 00763 /*01*/ UB header_1; 00764 /*02*/ UB header_2; 00765 /*03*/ UB header_3; 00766 00767 /*04-05*/ UW sample_number; 00768 /*06*/ UB error_code; 00769 /*07*/ UB general_status; 00770 00771 /*08-09*/ UW output_analog_0; 00772 /*10-11*/ UW output_analog_1; 00773 /*12-13*/ UW output_analog_2; 00774 /*14-15*/ UW output_analog_3; 00775 /*16-17*/ UW output_analog_4; 00776 /*18-19*/ UW output_analog_5; 00777 /*20-21*/ UW output_analog_6; 00778 /*22-23*/ UW output_analog_7; 00779 00780 /*24-25*/ UW input_analog_0; 00781 /*26-27*/ UW input_analog_1; 00782 /*28-29*/ UW input_analog_2; 00783 /*30-31*/ UW input_analog_3; 00784 /*32-33*/ UW input_analog_4; 00785 /*34-35*/ UW input_analog_5; 00786 /*36-37*/ UW input_analog_6; 00787 /*38-39*/ UW input_analog_7; 00788 00789 /*40-41*/ UW output_bank_0; 00790 /*42-43*/ UW output_bank_1; 00791 00792 /*44-45*/ UW input_bank_0; 00793 /*46-47*/ UW input_bank_1; 00794 00795 /*48-51*/ UL pulse_count_0; 00796 /*52-55*/ SL zc_variable; 00797 /*56-59*/ SL zd_variable; 00798 00799 /*60-63*/ SL encoder_0; 00800 /*64-67*/ SL encoder_1; 00801 /*68-71*/ SL encoder_2; 00802 /*72-75*/ SL encoder_3; 00803 00804 }; //GDataRecord47300_ENC 00805 00807 struct GDataRecord47300_24EX 00808 { 00809 00810 /*Offset type name description*/ 00811 00812 /*00*/ UB header_0; 00813 /*01*/ UB header_1; 00814 /*02*/ UB header_2; 00815 /*03*/ UB header_3; 00816 00817 /*04-05*/ UW sample_number; 00818 /*06*/ UB error_code; 00819 /*07*/ UB general_status; 00820 00821 /*08-09*/ UW output_analog_0; 00822 /*10-11*/ UW output_analog_1; 00823 /*12-13*/ UW output_analog_2; 00824 /*14-15*/ UW output_analog_3; 00825 /*16-17*/ UW output_analog_4; 00826 /*18-19*/ UW output_analog_5; 00827 /*20-21*/ UW output_analog_6; 00828 /*22-23*/ UW output_analog_7; 00829 00830 /*24-25*/ UW input_analog_0; 00831 /*26-27*/ UW input_analog_1; 00832 /*28-29*/ UW input_analog_2; 00833 /*30-31*/ UW input_analog_3; 00834 /*32-33*/ UW input_analog_4; 00835 /*34-35*/ UW input_analog_5; 00836 /*36-37*/ UW input_analog_6; 00837 /*38-39*/ UW input_analog_7; 00838 00839 /*40-41*/ UW output_bank_0; 00840 /*42-43*/ UW output_bank_1; 00841 00842 /*44-45*/ UW input_bank_0; 00843 /*46-47*/ UW input_bank_1; 00844 00845 /*48-51*/ UL pulse_count_0; 00846 /*52-55*/ SL zc_variable; 00847 /*56-59*/ SL zd_variable; 00848 00849 /*60-61*/ UW output_bank_2; 00850 /*62-63*/ UW output_back_3; 00851 00852 /*64-65*/ UW input_bank_2; 00853 /*66-67*/ UW input_bank_3; 00854 00855 }; //GDataRecord47300_24EX 00856 00857 00859 00869 union GDataRecord 00870 { 00871 00872 struct GDataRecord4000 dmc4000; 00873 struct GDataRecord4000 dmc4103; 00874 struct GDataRecord4000 dmc50000; 00875 00876 struct GDataRecord30000 dmc30000; 00877 00878 struct GDataRecord2103 dmc2103; 00879 00880 struct GDataRecord1806 dmc1806; 00881 00882 struct GDataRecord1802 dmc1802; 00883 00884 struct GDataRecord47000_ENC rio47000; 00885 struct GDataRecord47300_ENC rio47300; 00886 struct GDataRecord47300_24EX rio47300_24ex; 00887 00888 unsigned char byte_array[GALILDATARECORDMAXLENGTH]; 00889 }; 00890 00891 00892 #if defined(_MSC_VER) || defined(__GNUC__) 00893 #pragma pack() //return pack to default 00894 #else 00895 #error "Need to return structure packing for compiler" 00896 #endif 00897 00898 #endif //I_210405D9_D9EF_484F_8258_BB29A1BBA217