m5apiw32.h
Go to the documentation of this file.
00001 
00002 /******************************************************************************
00003  * 
00004  * Copyright (c) 2012 
00005  * 
00006  * SCHUNK GmbH & Co. KG
00007  *  
00008  * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 
00009  * 
00010  * Project name: Drivers for "Amtec M5 Protocol" Electronics V4
00011  *                                                                        
00012  * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 
00013  * 
00014  * Email:robotics@schunk.com
00015  * 
00016  * ToDo: 
00017  * 
00018  * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 
00019  * 
00020  * Redistribution and use in source and binary forms, with or without 
00021  * modification, are permitted provided that the following conditions are met: 
00022  * 
00023  *  * Redistributions of source code must retain the above copyright 
00024  *    notice, this list of conditions and the following disclaimer. 
00025  *  * Redistributions in binary form must reproduce the above copyright 
00026  *    notice, this list of conditions and the following disclaimer in the 
00027  *    documentation and/or other materials provided with the distribution. 
00028  *  * Neither the name of SCHUNK GmbH & Co. KG nor the names of its 
00029  *    contributors may be used to endorse or promote products derived from 
00030  *    this software without specific prior written permission. 
00031  * 
00032  * This program is free software: you can redistribute it and/or modify 
00033  * it under the terms of the GNU Lesser General Public License LGPL as 
00034  * published by the Free Software Foundation, either version 3 of the 
00035  * License, or (at your option) any later version. 
00036  * 
00037  * This program is distributed in the hope that it will be useful, 
00038  * but WITHOUT ANY WARRANTY; without even the implied warranty of 
00039  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
00040  * GNU Lesser General Public License LGPL for more details. 
00041  * 
00042  * You should have received a copy of the GNU Lesser General Public 
00043  * License LGPL along with this program. 
00044  * If not, see <http://www.gnu.org/licenses/>.
00045  * 
00046  ******************************************************************************/
00047 
00048 
00049 #define __LINUX__ 
00050 #ifndef M5APIW32_H
00051 #define M5APIW32_H
00052 
00053 
00054  
00055 #define M5DLLVERSION 0x5060
00056 #define MAX_MODULES 31
00057 
00058 #if defined (_WIN32)
00059 #ifndef WINAPI
00060         #define WINAPI __stdcall
00061 #endif
00062 
00063 #ifdef M5APIW32_EXPORTS
00064         #define M5DLL_API __declspec(dllexport)
00065 #else
00066         #define M5DLL_API __declspec(dllimport)
00067 #endif
00068 #endif
00069 #if defined(__LINUX__)
00070         #define WINAPI
00071         #define M5DLL_API
00072 #endif
00073 #if defined (__QNX__)
00074         #define WINAPI
00075         #define M5DLL_API
00076 #endif
00077 
00078 extern M5DLL_API int g_iM5DebugLevel;
00079 extern M5DLL_API int g_iM5DebugFile;
00080 extern M5DLL_API int g_iM5Debug;
00081 
00082 //-----------------------------------------------------------------------
00083 // new PCube Module States
00084 //-----------------------------------------------------------------------
00085 #define STATEID_MOD_ERROR                                                               0x00000001L
00086 #define STATEID_MOD_HOME                                                                0x00000002L
00087 #define STATEID_MOD_HALT                                                                0x00000004L
00088 #define STATEID_MOD_POWERFAULT                                  0x00000008L
00089 #define STATEID_MOD_TOW_ERROR                                           0x00000010L
00090 #define STATEID_MOD_COMM_ERROR                                  0x00000020L
00091 #define STATEID_MOD_SWR                                                                 0x00000040L
00092 #define STATEID_MOD_SW1                                                                 0x00000080L
00093 #define STATEID_MOD_SW2                                                                 0x00000100L
00094 #define STATEID_MOD_BRAKEACTIVE                                 0x00000200L
00095 #define STATEID_MOD_CURLIMIT                                            0x00000400L
00096 #define STATEID_MOD_MOTION                                                      0x00000800L
00097 #define STATEID_MOD_RAMP_ACC                                            0x00001000L
00098 #define STATEID_MOD_RAMP_STEADY                                 0x00002000L
00099 #define STATEID_MOD_RAMP_DEC                                            0x00004000L
00100 #define STATEID_MOD_RAMP_END                                            0x00008000L
00101 #define STATEID_MOD_INPROGRESS                                  0x00010000L
00102 #define STATEID_MOD_FULLBUFFER                                  0x00020000L
00103 #define STATEID_MOD_POW_VOLT_ERR                                0x00040000L
00104 #define STATEID_MOD_POW_FET_TEMP                                0x00080000L
00105 #define STATEID_MOD_POW_WDG_TEMP                                0x00100000L
00106 #define STATEID_MOD_POW_SHORTCUR                                0x00200000L
00107 #define STATEID_MOD_POW_HALLERR                                 0x00400000L
00108 #define STATEID_MOD_POW_INTEGRALERR                     0x00800000L
00109 #define STATEID_MOD_CPU_OVERLOAD                                0x01000000L
00110 #define STATEID_MOD_BEYOND_HARD                           0x02000000L
00111 #define STATEID_MOD_BEYOND_SOFT                                 0x04000000L
00112 #define STATEID_MOD_LOGIC_VOLT                                  0x08000000L
00113 
00114 //-----------------------------------------------------------------------
00115 // new PCube Module Config
00116 //-----------------------------------------------------------------------
00117 #define CONFIGID_MOD_ENCODER_FEEDBACK                   0x00000001L //OS: 25xx from 35xx in SETUP
00118 #define CONFIGID_MOD_RESOLVER_FEEDBACK                  0x00000002L //OS: 25xx from 35xx in SETUP
00119 #define CONFIGID_MOD_ABSOLUTE_FEEDBACK                  0x00000004L //OS: 25xx from 35xx in SETUP
00120 #define CONFIGID_MOD_BRAKE_PRESENT                              0x00000008L
00121 #define CONFIGID_MOD_BRAKE_AT_POWERON                   0x00000010L
00122 #define CONFIGID_MOD_SWR_WITH_ENCODERZERO               0x00000020L
00123 #define CONFIGID_MOD_SWR_AT_FALLING_EDGE                0x00000040L
00124 #define CONFIGID_MOD_CHANGE_SWR_TO_LIMIT                0x00000080L
00125 #define CONFIGID_MOD_SWR_ENABLED                        0x00000100L
00126 #define CONFIGID_MOD_SWR_LOW_ACTIVE                             0x00000200L
00127 #define CONFIGID_MOD_SWR_EQ_POSLIMIT                    0x00000400L //OS: 25xx
00128 #define CONFIGID_MOD_SWR_USE_EXTERNAL                   0x00000400L //OS: 35xx
00129 #define CONFIGID_MOD_SW1_ENABLED                                0x00000800L
00130 #define CONFIGID_MOD_SW1_LOW_ACTIVE                             0x00001000L
00131 #define CONFIGID_MOD_SW1_EQ_POSLIMIT                    0x00002000L //OS: 25xx
00132 #define CONFIGID_MOD_SW1_USE_EXTERNAL                   0x00002000L //OS: 35xx
00133 #define CONFIGID_MOD_SW2_ENABLED                                0x00004000L
00134 #define CONFIGID_MOD_SW2_LOW_ACTIVE                             0x00008000L
00135 #define CONFIGID_MOD_SW2_EQ_POSLIMIT                    0x00010000L //OS: 25xx
00136 #define CONFIGID_MOD_SW2_USE_EXTERNAL                   0x00010000L //OS: 35xx
00137 #define CONFIGID_MOD_LINEAR                                             0x00020000L
00138 #define CONFIGID_MOD_OPENBRAKE_ON_SW2                   0x00040000L     //OS: 25xx but not in 2512 from 35xx in SETUP
00139 #define CONFIGID_MOD_ALLOW_FULL_CUR                             0x00080000L
00140 #define CONFIGID_MOD_M3_COMPATIBLE                              0x00100000L
00141 #define CONFIGID_MOD_LINEAR_SCREW                               0x00200000L
00142 #define CONFIGID_MOD_DISABLE_ON_HALT                    0x00800000L
00143 #define CONFIGID_MOD_WATCHDOG_ENABLE                    0x01000000L
00144 #define CONFIGID_MOD_ZERO_MOVE_AFTER_HOK                0x02000000L //OS: 35xx
00145 #define CONFIGID_MOD_DISABLE_ACK                                0x04000000L
00146 #define CONFIGID_MOD_SYNC_MOTION                                0x08000000L
00147 #define CONFIGID_MOD_SYNC_TRANSMIT                              0x10000000L //OS: 36xx
00148 #define CONFIGID_MOD_CAN_RS232_COMM                             0x40000000L //OS: 25xx
00149 #define CONFIGID_MOD_PROFI_RS485_COMM                   0x80000000L //OS: 25xx
00150 
00151 //-----------------------------------------------------------------------
00152 // new PCube Module Setup
00153 //-----------------------------------------------------------------------
00154 // ---- FEEDBACK SETUP -----------
00155 #define SETUPID_MOD_ENCODER_FEEDBACK                    0x00000001L
00156 #define SETUPID_MOD_RESOLVER_FEEDBACK                   0x00000002L
00157 #define SETUPID_MOD_ABSOLUTE_FEEDBACK                   0x00000004L
00158 // ---- DIGITAL IO SETUP ---------
00159 #define SETUPID_MOD_4IN_4OUT                                    0x00000008L
00160 #define SETUPID_MOD_3IN_ENCODER_IN                              0x00000010L
00161 #define SETUPID_MOD_3IN_ENCODER_OUT                             0x00000020L
00162 // ---- COMM INTERFACE -----------
00163 #define SETUPID_MOD_RS232                                               0x00000040L
00164 #define SETUPID_MOD_CAN                                                 0x00000200L
00165 #define SETUPID_MOD_PROFIBUS                                    0x00000400L
00166 // ---- CAN ID SETUP -------------
00167 #define SETUPID_MOD_USE_M3ID                                    0x00000800L
00168 #define SETUPID_MOD_USE_M4ID                                    0x00001000L
00169 #define SETUPID_MOD_USE_CANOPEN                                 0x00002000L
00170 // ---- MOTOR SETUP --------------
00171 #define SETUPID_MOD_INVERT_MOTORDIR                             0x00004000L
00172 // ---- INPUT USAGE --------------
00173 #define SETUPID_MOD_USE_SW2_AS_ENABLE                   0x00008000L
00174 #define SETUPID_MOD_USE_SW2_AS_BRAKE                    0x00010000L
00175 // ---- OUTPUT USAGE -------------
00176 #define SETUPID_MOD_ERROR_TO_OUT0                               0x00020000L
00177 // ---- IN/OUTPUT USAGE -------------
00178 #define SETUPID_MOD_IO_GRIPPER_CONTROL                  0x00080000L
00179 
00180 //-----------------------------------------------------------------------
00181 // new PCube Module Types
00182 //-----------------------------------------------------------------------
00183 #define TYPEID_MOD_ROTARY                                               0x0f
00184 #define TYPEID_MOD_LINEAR                                               0xf0
00185 
00186 //-----------------------------------------------------------------------
00187 // new PCube Module DIO's
00188 //-----------------------------------------------------------------------
00189 #define DIOID_MOD_INBIT0                                                0x00000001L
00190 #define DIOID_MOD_INBIT1                                                0x00000002L
00191 #define DIOID_MOD_INBIT2                                                0x00000004L
00192 #define DIOID_MOD_INBIT3                                                0x00000008L
00193  
00194 #define DIOID_MOD_OUTBIT0                                               0x00000010L
00195 #define DIOID_MOD_OUTBIT1                                               0x00000020L
00196 #define DIOID_MOD_OUTBIT2                                               0x00000040L
00197 #define DIOID_MOD_OUTBIT3                                               0x00000080L
00198  
00199 #define DIOID_MOD_INSWR                                                 0x00000100L
00200 #define DIOID_MOD_INSW1                                                 0x00000200L
00201 #define DIOID_MOD_INSW2                                                 0x00000400L
00202 
00203 //-----------------------------------------------------------------------
00204 // new EMS Module Types
00205 //-----------------------------------------------------------------------
00206 #define TYPEID_EMS_DIG24V_OUT                                   10
00207 #define TYPEID_EMS_DIG24V_IN                                    11
00208 #define TYPEID_EMS_ANA10V_OUT                                   12
00209 #define TYPEID_EMS_ANA10V_IN                                    13
00210 #define TYPEID_EMS_ANA25MA_OUT                                  14
00211 #define TYPEID_EMS_ANA25MA_IN                                   15
00212 
00213 //-----------------------------------------------------------------------
00214 // new PCube Module Baudrates
00215 //-----------------------------------------------------------------------
00216 #define BAUDRATEID_MOD_CAN_125K                                 0
00217 #define BAUDRATEID_MOD_CAN_250K                                 1
00218 #define BAUDRATEID_MOD_CAN_500K                                 2
00219 #define BAUDRATEID_MOD_CAN_1000K                                3
00220 
00221 #define BAUDRATEID_MOD_RS232_1200                               0
00222 #define BAUDRATEID_MOD_RS232_2400                               1
00223 #define BAUDRATEID_MOD_RS232_4800                               2
00224 #define BAUDRATEID_MOD_RS232_9600                               3
00225 #define BAUDRATEID_MOD_RS232_19200                      4
00226 #define BAUDRATEID_MOD_RS232_38400                      5
00227 #define BAUDRATEID_MOD_RS232_57600                      6
00228 #define BAUDRATEID_MOD_RS232_115200                     7
00229 
00230 //-----------------------------------------------------------------------
00231 // new PCube Device Error Codes
00232 //-----------------------------------------------------------------------
00233 #define ERRID_DEV                                                       (-200L)         // device error
00234 #define ERRID_DEV_FUNCTIONNOTAVAILABLE          (ERRID_DEV - 1) 
00235 #define ERRID_DEV_NOINITSTRING                          (ERRID_DEV - 2)
00236 #define ERRID_DEV_NODEVICENAME                          (ERRID_DEV - 3)
00237 #define ERRID_DEV_BADINITSTRING                         (ERRID_DEV - 4)
00238 #define ERRID_DEV_INITERROR                                     (ERRID_DEV - 5)
00239 #define ERRID_DEV_NOTINITIALIZED                        (ERRID_DEV - 6)
00240 #define ERRID_DEV_WRITEERROR                            (ERRID_DEV - 7)
00241 #define ERRID_DEV_READERROR                                     (ERRID_DEV - 8)
00242 #define ERRID_DEV_WRITETIMEOUT                          (ERRID_DEV - 9)
00243 #define ERRID_DEV_READTIMEOUT                           (ERRID_DEV - 10)
00244 #define ERRID_DEV_WRONGMESSAGEID                        (ERRID_DEV - 11)
00245 #define ERRID_DEV_WRONGCOMMANDID                        (ERRID_DEV - 12)
00246 #define ERRID_DEV_WRONGPARAMETERID                      (ERRID_DEV - 13)
00247 #define ERRID_DEV_EXITERROR                                     (ERRID_DEV - 14)
00248 #define ERRID_DEV_NOMODULES                                     (ERRID_DEV - 15)
00249 #define ERRID_DEV_WRONGDEVICEID                         (ERRID_DEV - 16)
00250 #define ERRID_DEV_NOLIBRARY                                     (ERRID_DEV - 17)
00251 #define ERRID_DEV_ISINITIALIZED                         (ERRID_DEV - 18)
00252 #define ERRID_DEV_WRONGEMSMODULEID                      (ERRID_DEV - 19)
00253 #define ERRID_DEV_EMSNOTINITIALIZED                     (ERRID_DEV - 20)
00254 #define ERRID_DEV_EMSMAXNUMBER                          (ERRID_DEV - 21)
00255 #define ERRID_DEV_EMSINITERROR                          (ERRID_DEV - 22)
00256 #define ERRID_DEV_WRONGEMSTYPE                          (ERRID_DEV - 23)
00257 #define ERRID_DEV_WRONGEMSCHANNELID                     (ERRID_DEV - 24)
00258 #define ERRID_DEV_WRONGMP55MODULEID                     (ERRID_DEV - 25)
00259 #define ERRID_DEV_WRONGSCHUNKMODULEID           (ERRID_DEV - 26)
00260 #define ERRID_DEV_WRONGMODULEID                         (ERRID_DEV - 27)
00261 #define ERRID_DEV_MODULEERROR                           (ERRID_DEV - 28)
00262 #define ERRID_DEV_WAITTIMEOUT                           (ERRID_DEV - 29)
00263 #define ERRID_DEV_OPENINIFILE                           (ERRID_DEV - 30)
00264 
00265 //-----------------------------------------------------------------------
00266 // old PCube Device Error Codes
00267 //-----------------------------------------------------------------------
00268 #define CLD_OK                                                  0
00269 #define CLD_ERR                                                 -1
00270 #define CLDERR_ERROR                                    (-200)
00271 #define CLERR_FUNCTIONNOTAVAILABLE      (CLDERR_ERROR - 1)      
00272 #define CLERR_NOINITSTRING                              (CLDERR_ERROR - 2)
00273 #define CLERR_NODEVICENAME                              (CLDERR_ERROR - 3)
00274 #define CLERR_BADDEVICEINITSTRING               (CLDERR_ERROR - 4)
00275 #define CLDERR_INITIALIZATIONERROR              (CLDERR_ERROR - 5)      
00276 #define CLERR_DEVICENOTOPEN                             (CLDERR_ERROR - 6)
00277 #define CLDERR_TRANSMISSIONERROR                (CLDERR_ERROR - 7)
00278 #define CLDERR_RECEIVEERROR                             (CLDERR_ERROR - 8)
00279 #define CLERR_COMM_SENDTIMEOUT                  (CLDERR_ERROR - 9)
00280 #define CLERR_COMM_RECVTIMEOUT                  (CLDERR_ERROR - 10)
00281 #define CLDERR_DRIVE_NOMODULEFOUND              (CLDERR_ERROR - 15)
00282 #define CLERR_WRONGHANDLE                               (CLDERR_ERROR - 16)
00283 #define CLDERR_LIBRARYNOTFOUND                  (CLDERR_ERROR - 17)     
00284 
00285 //-----------------------------------------------------------------------
00286 // old PCube Module States
00287 //-----------------------------------------------------------------------
00288 #define STATE_ERROR                                                     0x00000001L
00289 #define STATE_HOME_OK                                           0x00000002L
00290 #define STATE_HALTED                                            0x00000004L
00291 #define STATE_POWERFAULT                                        0x00000008L
00292 #define STATE_TOW_ERROR                                         0x00000010L
00293 #define STATE_COMM_ERROR                                        0x00000020L
00294 #define STATE_SWR                                                       0x00000040L
00295 #define STATE_SW1                                                       0x00000080L
00296 #define STATE_SW2                                                       0x00000100L
00297 #define STATE_BRAKEACTIVE                                       0x00000200L
00298 #define STATE_CURLIMIT                                          0x00000400L
00299 #define STATE_MOTION                                            0x00000800L
00300 #define STATE_RAMP_ACC                                          0x00001000L
00301 #define STATE_RAMP_STEADY                                       0x00002000L
00302 #define STATE_RAMP_DEC                                          0x00004000L
00303 #define STATE_RAMP_END                                          0x00008000L
00304 #define STATE_INPROGRESS                                        0x00010000L
00305 #define STATE_FULLBUFFER                                        0x00020000L
00306 #define STATE_POW_VOLT_ERR                                      0x00040000L
00307 #define STATE_POW_FET_TEMP                                      0x00080000L
00308 #define STATE_POW_WDG_TEMP                                      0x00100000L
00309 #define STATE_POW_SHORTCUR                                      0x00200000L
00310 #define STATE_POW_HALLERR                                       0x00400000L
00311 #define STATE_POW_INTEGRALERR                           0x00800000L
00312 #define STATE_CPU_OVERLOAD                                      0x01000000L
00313 #define STATE_BEYOND_HARD                                       0x02000000L
00314 #define STATE_BEYOND_SOFT                                       0x04000000L
00315 
00316 //-----------------------------------------------------------------------
00317 // old PCube Module Types
00318 //-----------------------------------------------------------------------
00319 #define ROTARY_DRIVE                                            TYPEID_MOD_ROTARY
00320 #define LINEAR_DRIVE                                            TYPEID_MOD_LINEAR
00321 
00322 //-----------------------------------------------------------------------
00323 // old EMS Module Types
00324 //-----------------------------------------------------------------------
00325 #define TW_DIG24V_OUT                                           TYPEID_EMS_DIG24V_OUT
00326 #define TW_DIG24V_IN                                            TYPEID_EMS_DIG24V_IN
00327 #define TW_ANA10V_OUT                                           TYPEID_EMS_ANA10V_OUT
00328 #define TW_ANA10V_IN                                            TYPEID_EMS_ANA10V_IN
00329 #define TW_ANA25MA_OUT                                          TYPEID_EMS_ANA25MA_OUT
00330 #define TW_ANA25MA_IN                                           TYPEID_EMS_ANA25MA_IN
00331 
00332 //-----------------------------------------------------------------------
00333 // old PCube Module Config
00334 //-----------------------------------------------------------------------
00335 
00336 #define CONFIG_ENCODER_FEEDBACK                         0x00000001L
00337 #define CONFIG_RESOLVER_FEEDBACK                        0x00000002L
00338 #define CONFIG_ABSOLUTE_FEEDBACK                        0x00000004L
00339 #define CONFIG_BRAKE_PRESENT                            0x00000008L
00340 #define CONFIG_BRAKE_AT_POWERON                         0x00000010L
00341 #define CONFIG_SWR_WITH_ENCODERZERO                     0x00000020L
00342 #define CONFIG_SWR_AT_FALLING_EDGE                      0x00000040L
00343 #define CONFIG_CHANGE_SWR_TO_LIMIT                      0x00000080L
00344 #define CONFIG_SWR_ENABLED                              0x00000100L
00345 #define CONFIG_SWR_LOW_ACTIVE                           0x00000200L
00346 #define CONFIG_SWR_EQ_POSLIMIT                          0x00000400L
00347 #define CONFIG_SW1_ENABLED                                      0x00000800L
00348 #define CONFIG_SW1_LOW_ACTIVE                           0x00001000L
00349 #define CONFIG_SW1_EQ_POSLIMIT                          0x00002000L
00350 #define CONFIG_SW2_ENABLED                                      0x00004000L
00351 #define CONFIG_SW2_LOW_ACTIVE                           0x00008000L
00352 #define CONFIG_SW2_EQ_POSLIMIT                          0x00010000L
00353 #define CONFIG_LINEAR_DRIVE                                     0x00020000L
00354 #define CONFIG_OPENBRAKE_ON_SW2                         0x00040000L
00355 #define CONFIG_ALLOW_FULL_CUR                           0x00080000L
00356 #define CONFIG_M3_COMPATIBLE                            0x00100000L
00357 #define CONFIG_LINEAR_SCREW                                     0x00200000L
00358 #define CONFIG_SYNC_MOTION                                      0x08000000L
00359 #define CONFIG_CAN_RS232_COMM                           0x40000000L
00360 #define CONFIG_PROFI_RS485_COMM                         0x80000000L
00361 
00362 #define P3502_CONFIG_BRAKE_PRESENT          0x00000008L
00363 #define P3502_CONFIG_BRAKE_AT_POWERON       0x00000010L
00364 #define P3502_CONFIG_SWR_WITH_ENCODERZERO   0x00000020L
00365 #define P3502_CONFIG_SWR_AT_FALLING_EDGE    0x00000040L
00366 #define P3502_CONFIG_CHANGE_SWR_TO_LIMIT    0x00000080L
00367 #define P3502_CONFIG_SWR_ENABLED                0x00000100L
00368 #define P3502_CONFIG_SWR_LOW_ACTIVE         0x00000200L
00369 #define P3502_CONFIG_SWR_USE_EXTERNAL       0x00000400L
00370 #define P3502_CONFIG_SW1_ENABLED            0x00000800L
00371 #define P3502_CONFIG_SW1_LOW_ACTIVE         0x00001000L
00372 #define P3502_CONFIG_SW1_USE_EXTERNAL       0x00002000L
00373 #define P3502_CONFIG_SW2_ENABLED                        0x00004000L
00374 #define P3502_CONFIG_SW2_LOW_ACTIVE         0x00008000L
00375 #define P3502_CONFIG_SW2_USE_EXTERNAL           0x00010000L
00376 #define P3502_CONFIG_LINEAR_DRIVE                       0x00020000L
00377 #define P3502_CONFIG_ALLOW_FULL_CUR                     0x00080000L
00378 #define P3502_CONFIG_M3_COMPATIBLE                      0x00100000L
00379 #define P3502_CONFIG_LINEAR_SCREW                       0x00200000L
00380 #define P3502_CONFIG_DISABLE_ON_HALT            0x00800000L
00381 #define P3502_CONFIG_WATCHDOG_ENABLE            0x01000000L
00382 #define P3502_CONFIG_ZERO_MOVE_AFTER_HOK        0x02000000L
00383 #define P3502_CONFIG_DISABLE_ACK                        0x04000000L
00384 
00385 //-----------------------------------------------------------------------
00386 // old PCube Module Setup
00387 //-----------------------------------------------------------------------
00388 
00389 // ---- FEEDBACK SETUP -----------
00390 #define P3502_SETUP_ENCODER_FEEDBACK            0x00000001L
00391 #define P3502_SETUP_RESOLVER_FEEDBACK           0x00000002L
00392 #define P3502_SETUP_ABSOLUTE_FEEDBACK           0x00000004L
00393 // ---- DIGITAL IO SETUP ---------
00394 #define P3502_SETUP_4IN_4OUT                0x00000008L
00395 #define P3502_SETUP_3IN_ENCODER_IN                      0x00000010L
00396 #define P3502_SETUP_3IN_ENCODER_OUT                     0x00000020L
00397 // ---- COMM INTERFACE -----------
00398 #define P3502_SETUP_RS232                                       0x00000040L
00399 #define P3502_SETUP_RS485HD                                     0x00000080L
00400 #define P3502_SETUP_RS485FD                                     0x00000100L
00401 #define P3502_SETUP_CAN                                         0x00000200L
00402 #define P3502_SETUP_PROFIBUS                            0x00000400L
00403 // ---- CAN ID SETUP -------------
00404 #define P3502_SETUP_USE_M3ID                            0x00000800L
00405 #define P3502_SETUP_USE_M4ID                            0x00001000L
00406 #define P3502_SETUP_USE_CANOPEN                         0x00002000L
00407 // ---- MOTOR SETUP --------------
00408 #define P3502_SETUP_INVERT_MOTORDIR         0x00004000L
00409 // ---- INPUT USAGE --------------
00410 #define P3502_SETUP_USE_SW2_AS_ENABLE           0x00008000L
00411 #define P3502_SETUP_USE_SW2_AS_BRAKE            0x00010000L
00412 // ---- OUTPUT USAGE -------------
00413 #define P3502_SETUP_ERROR_TO_OUT0                       0x00020000L
00414 // ---- COUNTER SETUP ------------
00415 #define P3502_SETUP_INVERT_COUNTER                      0x00040000L
00416 
00417 //-----------------------------------------------------------------------
00418 // old PCube Functionnames
00419 //-----------------------------------------------------------------------
00420 
00421 #define PCube_getCubeState                      PCube_getModuleState
00422 #define PCube_getDefCubeVersion         PCube_getModuleVersion
00423 #define PCube_getModulesIdMap           PCube_getModuleIdMap
00424 #define PCube_getDefBurncount           PCube_getDefBurnCount
00425 #define PCube_getDefSerialNo            PCube_getModuleSerialNo
00426 #define PCube_getDefPulsesPerTurn       PCube_getDefIncPerTurn
00427 #define PCube_getDefDioSetup            PCube_getDefDioData
00428 #define PCube_getActPos                         PCube_getPos
00429 #define PCube_getActVel                         PCube_getVel
00430 #define PCube_getActPosInc                      PCube_getPosInc
00431 #define PCube_syncModule                        PCube_homeModule
00432 #define PCube_moveCurrent                       PCube_moveCur
00433 #define PCube_moveCurrentInc            PCube_moveCurInc
00434 #define PCube_moveCurrentExtended       PCube_moveCurExtended
00435 #define DLR_FTSInit                                     PCube_initDLR_FTS
00436 #define DLR_FTSGetData                          PCube_getDataDLR_FTS
00437 #define PCube_getStatusInternal         PCube_getStateInternal
00438 #define PCube_ConfigFromFile            PCube_configFromFile
00439 #define PCube_getInitString                     PCube_getDeviceInitString
00440 #define PCube_getName                           PCube_getDeviceName
00441 #define PCube_getRevision                       PCube_getDeviceRevision
00442 #define PCube_setTargetVel                      PCube_setRampVel
00443 #define PCube_setTargetAcc                      PCube_setRampAcc
00444 
00445 //-----------------------------------------------------------------------
00446 // new PCube Functionnames
00447 //-----------------------------------------------------------------------
00448 #ifdef __cplusplus
00449 extern "C" {
00450 #endif
00451 
00452 M5DLL_API int WINAPI PCube_getDllVersion( void );
00453 M5DLL_API int WINAPI PCube_setDllDebug( int iDebug, int iDebugLevel, int iDebugFile );
00454 
00455 M5DLL_API int WINAPI PCube_configFromFile( const char* acFileName );
00456 M5DLL_API int WINAPI PCube_openDevice( int* piDeviceId, const char* acInitString );
00457 M5DLL_API int WINAPI PCube_closeDevice( int iDeviceId );
00458 M5DLL_API int WINAPI PCube_closeDevices( void );
00459 M5DLL_API int WINAPI PCube_getDeviceCount( void );
00460 M5DLL_API int WINAPI PCube_getDeviceIdMap( int* aiIdMap );
00461 M5DLL_API const char* WINAPI PCube_getDeviceRevision( int iDeviceId );
00462 M5DLL_API const char* WINAPI PCube_getDeviceInitString( int iDeviceId );
00463 M5DLL_API const char* WINAPI PCube_getDeviceName( int iDeviceId );
00464 M5DLL_API int WINAPI PCube_setDeviceName( int iDeviceId, const char* acDeviceName );
00465 M5DLL_API int WINAPI PCube_setDeviceDebug( int iDeviceId, int iDebug, int iDebugLevel, int iDebugFile );
00466 
00467 M5DLL_API int WINAPI PCube_getModuleCount( int iDeviceId );
00468 M5DLL_API int WINAPI PCube_getModuleIdMap( int iDeviceId, int* aiIdMap );
00469 M5DLL_API int WINAPI PCube_getModuleState( int iDeviceId, int iModuleId, unsigned long* puiState );
00470 M5DLL_API int WINAPI PCube_getModuleType( int iDeviceId, int iModuleId, unsigned char* pucValue );
00471 M5DLL_API int WINAPI PCube_getModuleVersion( int iDeviceId, int iModuleId, unsigned short* puiValue );
00472 M5DLL_API int WINAPI PCube_getModuleSerialNo( int iDeviceId, int iModuleId, unsigned long* puiValue );
00473 
00474 M5DLL_API int WINAPI PCube_getDefConfig( int iDeviceId, int iModuleId, unsigned long* puiValue );
00475 M5DLL_API int WINAPI PCube_getDefSetup( int iDeviceId, int iModuleId, unsigned long* puiValue );        //OS: available from 35xx 
00476 M5DLL_API int WINAPI PCube_getDefBaudRate( int iDeviceId, int iModuleId, unsigned char* pucValue );
00477 M5DLL_API int WINAPI PCube_getDefBurnCount( int iDeviceId, int iModuleId, unsigned char* pucValue );
00478 M5DLL_API int WINAPI PCube_getDefGearRatio( int iDeviceId, int iModuleId, float* pfValue );
00479 M5DLL_API int WINAPI PCube_getDefLinearRatio( int iDeviceId, int iModuleId, float* pfValue );
00480 M5DLL_API int WINAPI PCube_getDefCurRatio( int iDeviceId, int iModuleId, float* pfValue );
00481 M5DLL_API int WINAPI PCube_getDefBrakeTimeOut( int iDeviceId, int iModuleId, unsigned short* puiValue );
00482 M5DLL_API int WINAPI PCube_getDefIncPerTurn( int iDeviceId, int iModuleId, unsigned long* puiValue );
00483 M5DLL_API int WINAPI PCube_getDefDioData( int iDeviceId, int iModuleId, unsigned long* puiValue );      //OS: not available from 35xx 
00484 M5DLL_API int WINAPI PCube_getDefA0( int iDeviceId, int iModuleId, short* piValue );
00485 M5DLL_API int WINAPI PCube_getDefC0( int iDeviceId, int iModuleId, short* piValue );
00486 M5DLL_API int WINAPI PCube_getDefDamp( int iDeviceId, int iModuleId, short* piValue );
00487 M5DLL_API int WINAPI PCube_getDefHomeOffset( int iDeviceId, int iModuleId, float* pfValue );
00488 M5DLL_API int WINAPI PCube_getDefHomeVel( int iDeviceId, int iModuleId, float* pfValue );
00489 M5DLL_API int WINAPI PCube_getDefMinPos( int iDeviceId, int iModuleId, float* pfValue );
00490 M5DLL_API int WINAPI PCube_getDefMaxPos( int iDeviceId, int iModuleId, float* pfValue );
00491 M5DLL_API int WINAPI PCube_getDefMaxVel( int iDeviceId, int iModuleId, float* pfValue );
00492 M5DLL_API int WINAPI PCube_getDefMaxAcc( int iDeviceId, int iModuleId, float* pfValue );
00493 M5DLL_API int WINAPI PCube_getDefMaxCur( int iDeviceId, int iModuleId, float* pfValue );
00494 M5DLL_API int WINAPI PCube_getDefMaxDeltaPos( int iDeviceId, int iModuleId, float* pfValue );
00495 
00496 M5DLL_API int WINAPI PCube_getConfig( int iDeviceId, int iModuleId, unsigned long* puiValue );
00497 M5DLL_API int WINAPI PCube_getIncRatio( int iDeviceId, int iModuleId, float* pValue );
00498 M5DLL_API int WINAPI PCube_getStateDioPos( int iDeviceId, int iModuleId, unsigned long* puiShortState, unsigned char* pucDio, float* pfPos );   //OS: available from 2518 and 3518
00499 M5DLL_API int WINAPI PCube_getDioData( int iDeviceId, int iModuleId, unsigned long* puiValue );
00500 M5DLL_API int WINAPI PCube_getA0( int iDeviceId, int iModuleId, short* piValue );
00501 M5DLL_API int WINAPI PCube_getC0( int iDeviceId, int iModuleId, short* piValue );
00502 M5DLL_API int WINAPI PCube_getDamp( int iDeviceId, int iModuleId, short* piValue );
00503 M5DLL_API int WINAPI PCube_getHomeOffset( int iDeviceId, int iModuleId, float* pValue );
00504 M5DLL_API int WINAPI PCube_getHomeOffsetInc( int iDeviceId, int iModuleId, long* piValue );
00505 M5DLL_API int WINAPI PCube_getHomeVel( int iDeviceId, int iModuleId, float* pfValue );          //OS: available from 2518 and 3518
00506 M5DLL_API int WINAPI PCube_getHomeVelInc( int iDeviceId, int iModuleId, long* piValue );        //OS: available from 2518 and 3518
00507 M5DLL_API int WINAPI PCube_getPos( int iDeviceId, int iModuleId, float* pfPos );
00508 M5DLL_API int WINAPI PCube_getPosInc( int iDeviceId, int iModuleId, long* piValue );
00509 M5DLL_API int WINAPI PCube_getPosCountInc( int iDeviceId, int iModuleId, long* piValue );
00510 M5DLL_API int WINAPI PCube_getVel( int iDeviceId, int iModuleId, float* pfVel );
00511 M5DLL_API int WINAPI PCube_getVelInc( int iDeviceId, int iModuleId, long* piValue );
00512 M5DLL_API int WINAPI PCube_getIPolVel( int iDeviceId, int iModuleId, float* pValue );
00513 M5DLL_API int WINAPI PCube_getCur( int iDeviceId, int iModuleId, float* pfCur );
00514 M5DLL_API int WINAPI PCube_getCurInc( int iDeviceId, int iModuleId, short* piValue );
00515 M5DLL_API int WINAPI PCube_getMinPos( int iDeviceId, int iModuleId, float* pfValue );
00516 M5DLL_API int WINAPI PCube_getMinPosInc( int iDeviceId, int iModuleId, long* piValue );
00517 M5DLL_API int WINAPI PCube_getMaxPos( int iDeviceId, int iModuleId, float* pfValue );
00518 M5DLL_API int WINAPI PCube_getMaxPosInc( int iDeviceId, int iModuleId, long* piValue );
00519 M5DLL_API int WINAPI PCube_getMaxVel( int iDeviceId, int iModuleId, float* pfValue );
00520 M5DLL_API int WINAPI PCube_getMaxVelInc( int iDeviceId, int iModuleId, long* piValue );
00521 M5DLL_API int WINAPI PCube_getMaxAcc( int iDeviceId, int iModuleId, float* pfValue );
00522 M5DLL_API int WINAPI PCube_getMaxAccInc( int iDeviceId, int iModuleId, long* piValue );
00523 M5DLL_API int WINAPI PCube_getMaxCur( int iDeviceId, int iModuleId, float* pfValue );
00524 M5DLL_API int WINAPI PCube_getDeltaPos( int iDeviceId, int iModuleId, float* pfValue );
00525 M5DLL_API int WINAPI PCube_getDeltaPosInc( int iDeviceId, int iModuleId, long* piValue );
00526 M5DLL_API int WINAPI PCube_getMaxDeltaPos( int iDeviceId, int iModuleId, float* pfValue );
00527 M5DLL_API int WINAPI PCube_getMaxDeltaPosInc( int iDeviceId, int iModuleId, long* piValue );
00528 M5DLL_API int WINAPI PCube_getSavePos( int iDeviceId, int iModuleId, float* pfValue );  //OS: available from 2518 and 3518
00529 M5DLL_API int WINAPI PCube_getSyncTime( int iDeviceId, int iModuleId, short* piValue ); //OS: available from 3602
00530 
00531 M5DLL_API int WINAPI PCube_setConfig( int iDeviceId, int iModuleId, unsigned long uiValue );
00532 M5DLL_API int WINAPI PCube_setDioData( int iDeviceId, int iModuleId, unsigned long uiValue );
00533 M5DLL_API int WINAPI PCube_setA0( int iDeviceId, int iModuleId, short iValue );
00534 M5DLL_API int WINAPI PCube_setC0( int iDeviceId, int iModuleId, short iValue );
00535 M5DLL_API int WINAPI PCube_setDamp( int iDeviceId, int iModuleId, short iValue );
00536 M5DLL_API int WINAPI PCube_setHomeOffset( int iDeviceId, int iModuleId, float fValue );
00537 M5DLL_API int WINAPI PCube_setHomeOffsetInc( int iDeviceId, int iModuleId, long iValue );
00538 M5DLL_API int WINAPI PCube_setHomeVel( int iDeviceId, int iModuleId, float fValue );    //OS: available from 2518 and 3518
00539 M5DLL_API int WINAPI PCube_setHomeVelInc( int iDeviceId, int iModuleId, long iValue );  //OS: available from 2518 and 3518
00540 M5DLL_API int WINAPI PCube_setRampVel( int iDeviceId, int iModuleId, float fValue );                    
00541 M5DLL_API int WINAPI PCube_setRampVelInc( int iDeviceId, int iModuleId, long iValue );
00542 M5DLL_API int WINAPI PCube_setRampAcc( int iDeviceId, int iModuleId, float fValue );                    
00543 M5DLL_API int WINAPI PCube_setRampAccInc( int iDeviceId, int iModuleId, long iValue );
00544 M5DLL_API int WINAPI PCube_setMinPos( int iDeviceId, int iModuleId, float fValue );
00545 M5DLL_API int WINAPI PCube_setMinPosInc( int iDeviceId, int iModuleId, long iValue );
00546 M5DLL_API int WINAPI PCube_setMaxPos( int iDeviceId, int iModuleId, float fValue );
00547 M5DLL_API int WINAPI PCube_setMaxPosInc( int iDeviceId, int iModuleId, long iValue );
00548 M5DLL_API int WINAPI PCube_setMaxVel( int iDeviceId, int iModuleId, float fValue );
00549 M5DLL_API int WINAPI PCube_setMaxVelInc( int iDeviceId, int iModuleId, long iValue );
00550 M5DLL_API int WINAPI PCube_setMaxAcc( int iDeviceId, int iModuleId, float fValue );
00551 M5DLL_API int WINAPI PCube_setMaxAccInc( int iDeviceId, int iModuleId, long iValue );
00552 M5DLL_API int WINAPI PCube_setMaxCur( int iDeviceId, int iModuleId, float fValue );
00553 M5DLL_API int WINAPI PCube_setMaxDeltaPos( int iDeviceId, int iModuleId, float fValue );
00554 M5DLL_API int WINAPI PCube_setMaxDeltaPosInc( int iDeviceId, int iModuleId, long iValue );
00555 M5DLL_API int WINAPI PCube_setSyncTime( int iDeviceId, int iModuleId, short iValue );   //OS: available from 3602
00556 
00557 M5DLL_API int WINAPI PCube_homeModule( int iDeviceId, int iModuleId );
00558 M5DLL_API int WINAPI PCube_haltModule( int iDeviceId, int iModuleId );
00559 M5DLL_API int WINAPI PCube_resetModule( int iDeviceId, int iModuleId );
00560 M5DLL_API int WINAPI PCube_recalcPIDParams( int iDeviceId, int iModuleId );
00561 
00562 M5DLL_API int WINAPI PCube_movePos( int iDeviceId, int iModuleId, float fPos );
00563 M5DLL_API int WINAPI PCube_movePosInc( int iDeviceId, int iModuleId, long iPos );
00564 M5DLL_API int WINAPI PCube_movePosExtended( int iDeviceId, int iModuleId, float fPos, unsigned long* puiShortState, unsigned char* pucDio, float* pfPos );
00565 M5DLL_API int WINAPI PCube_moveRamp( int iDeviceId, int iModuleId, float fPos, float fVel, float fAcc );
00566 M5DLL_API int WINAPI PCube_moveRampInc( int iDeviceId, int iModuleId, long iPos, long iVel, long iAcc );
00567 M5DLL_API int WINAPI PCube_moveRampExtended( int iDeviceId, int iModuleId, float fPos, float fVel, float fAcc, unsigned long* puiState, unsigned char* pucDio, float* pfPos );
00568 M5DLL_API int WINAPI PCube_moveVel( int iDeviceId, int iModuleId, float fVel );
00569 M5DLL_API int WINAPI PCube_moveVelInc( int iDeviceId, int iModuleId, long iVel );
00570 M5DLL_API int WINAPI PCube_moveVelExtended( int iDeviceId, int iModuleId, float fCur, unsigned long* puiShortState, unsigned char* pucDio, float* pfPos );
00571 M5DLL_API int WINAPI PCube_moveCur( int iDeviceId, int iModuleId, float fCur );
00572 M5DLL_API int WINAPI PCube_moveCurInc( int iDeviceId, int iModuleId, long iCur );
00573 M5DLL_API int WINAPI PCube_moveCurExtended( int iDeviceId, int iModuleId, float fCur, unsigned long* puiShortState, unsigned char* pucDio, float* pfPos );
00574 M5DLL_API int WINAPI PCube_moveStep( int iDeviceId, int iModuleId, float fPos, unsigned short uiTime );
00575 M5DLL_API int WINAPI PCube_moveStepInc( int iDeviceId, int iModuleId, long iPos, unsigned short uiTime );
00576 M5DLL_API int WINAPI PCube_moveStepExtended( int iDeviceId, int iModuleId, float fPos, unsigned short uiTime, unsigned long* puiShortState, unsigned char* pucDio, float* pfPos );
00577 
00578 M5DLL_API int WINAPI PCube_homeAll( int iDeviceId );
00579 M5DLL_API int WINAPI PCube_resetAll( int iDeviceId );
00580 M5DLL_API int WINAPI PCube_haltAll( int iDeviceId );
00581 M5DLL_API int WINAPI PCube_serveWatchdogAll( int iDeviceId );
00582 M5DLL_API int WINAPI PCube_setBaudRateAll( int iDeviceId, unsigned char pucValue );
00583 M5DLL_API int WINAPI PCube_startMotionAll( int iDeviceId );
00584 M5DLL_API int WINAPI PCube_savePosAll( int iDeviceId );
00585 
00586 M5DLL_API int WINAPI PCube_waitForHomeEnd( int iDeviceId, int iModuleId, unsigned long uiTime );
00587 M5DLL_API int WINAPI PCube_waitForMotionEnd( int iDeviceId, int iModuleId, unsigned long uiTime );
00588 M5DLL_API int WINAPI PCube_waitForRampEnd( int iDeviceId, int iModuleId, unsigned long uiTime );
00589 M5DLL_API int WINAPI PCube_waitForRampDec( int iDeviceId, int iModuleId, unsigned long uiTime );
00590 M5DLL_API int WINAPI PCube_waitForRampSteady( int iDeviceId, int iModuleId, unsigned long uiTime );
00591 M5DLL_API int WINAPI PCube_waitForHomeEndAll( int iDeviceId, unsigned long uiTime );
00592 M5DLL_API int WINAPI PCube_waitForMotionEndAll( int iDeviceId, unsigned long uiTime );
00593 M5DLL_API int WINAPI PCube_waitForRampEndAll( int iDeviceId, unsigned long uiTime );
00594 M5DLL_API int WINAPI PCube_waitForStartMotionAll( int iDeviceId );
00595 
00596 M5DLL_API int WINAPI PCube_xmit8Bytes( int iDeviceId, int iModuleId, void* pBytes );
00597 M5DLL_API int WINAPI PCube_xack8Bytes( int iDeviceId, int iModuleId, void* pBytes );
00598 M5DLL_API int WINAPI PCube_doInternal( int iDeviceId, int iModuleId, void* pBytes );
00599 M5DLL_API int WINAPI PCube_getStateInternal( int iDeviceId, int iModuleId, unsigned long* puiState );
00600 M5DLL_API int WINAPI PCube_updateModuleIdMap( int iDeviceId );
00601 
00602 M5DLL_API int WINAPI PCube_initEMS_IO( int iDeviceId, unsigned char ucType, unsigned long uiSerialNo );
00603 M5DLL_API int WINAPI PCube_getDataEMS_DIO( int iDeviceId, int iModuleId, int iChannelId, int* piData );
00604 M5DLL_API int WINAPI PCube_getDataEMS_AIO( int iDeviceId, int iModuleId, int iChannelId, float* pfData );
00605 M5DLL_API int WINAPI PCube_setDataEMS_DIO( int iDeviceId, int iModuleId, int iChannelId, int iData );
00606 M5DLL_API int WINAPI PCube_setDataEMS_AIO( int iDeviceId, int iModuleId, int iChannelId, float fData );
00607 
00608 M5DLL_API int WINAPI PCube_initDLR_FTS( int iDeviceId );
00609 M5DLL_API int WINAPI PCube_getDataDLR_FTS( int iDeviceId, float* pfDataFX, float* pfDataFY, float* pfDataFZ, float* pfDataTX, float* pfDataTY, float* pfDataTZ, long* piState );
00610 
00611 M5DLL_API int WINAPI PCube_getDataSCHUNK_FTC( int iDeviceId, int iModulId, int iChannelTypeId, float* pfDataFX, float* pfDataFY, float* pfDataFZ, float* pfDataTX, float* pfDataTY, float* pfDataTZ, short* piState );
00612 M5DLL_API int WINAPI PCube_setNullSCHUNK_FTC( int iDeviceId, int iModulId, short* piState );
00613 
00614 M5DLL_API int WINAPI PCube_getDataMP55_IO( int iDeviceId, int iModuleId, float* pfData );
00615 M5DLL_API int WINAPI PCube_setTaraMP55_IO( int iDeviceId, int iModuleId, float fData );
00616 
00617 M5DLL_API int WINAPI PCube_getDefCurOffset( int iDeviceId, int iModuleId, float* pfValue );
00618 
00619 M5DLL_API int WINAPI PCube_getDataMP55_IO_fast( int iDeviceId, int iModuleId, float* pfData );
00620 M5DLL_API int WINAPI PCube_setInitMP55_IO_fast( int iDeviceId, int iModuleId );
00621 
00622 M5DLL_API int WINAPI PCube_getRawMotorCurrent( int iDeviceId, int iModuleId, short* piValue );
00623 M5DLL_API int WINAPI PCube_getRawMotorSupply( int iDeviceId, int iModuleId, short* piValue );
00624 M5DLL_API int WINAPI PCube_getRawTemperature( int iDeviceId, int iModuleId, short* piValue );
00625 M5DLL_API int WINAPI PCube_getRawLogicSupply( int iDeviceId, int iModuleId, short* piValue );
00626 
00627 M5DLL_API int WINAPI PCube_getCanOpenRawAbsEnc( int iDeviceId, int iModuleId, short* piValue );
00628 
00629 M5DLL_API int WINAPI PCube_getLoadLimit( int iDeviceId, int iModuleId, long* piValue );
00630 M5DLL_API int WINAPI PCube_getMaxLoadGradient( int iDeviceId, int iModuleId, long* piValue );
00631 M5DLL_API int WINAPI PCube_getLoadDeltaTime( int iDeviceId, int iModuleId, unsigned short* piValue );
00632 M5DLL_API int WINAPI PCube_setLoadLimit( int iDeviceId, int iModuleId, long iValue );
00633 M5DLL_API int WINAPI PCube_setMaxLoadGradient( int iDeviceId, int iModuleId, long iValue );
00634 M5DLL_API int WINAPI PCube_setLoadDeltaTime( int iDeviceId, int iModuleId, unsigned short iValue );
00635 
00636 M5DLL_API int WINAPI PCube_saveParameters( int iDeviceId, int iModuleId );
00637 
00638 M5DLL_API int WINAPI PCube_getDefCANBaudRate( int iDeviceId, int iModuleId, unsigned char* pucValue );
00639 M5DLL_API int WINAPI PCube_getDefRSBaudRate( int iDeviceId, int iModuleId, unsigned char* pucValue );
00640 M5DLL_API int WINAPI PCube_setDefGearRatio( int iDeviceId, int iModuleId, float fValue );
00641 M5DLL_API int WINAPI PCube_setDefLinRatio( int iDeviceId, int iModuleId, float fValue );
00642 M5DLL_API int WINAPI PCube_setDefCurRatio( int iDeviceId, int iModuleId, float fValue );
00643 M5DLL_API int WINAPI PCube_setDefHomeAcc( int iDeviceId, int iModuleId, float fValue );
00644 M5DLL_API int WINAPI PCube_setModuleSerialNo( int iDeviceId, int iModuleId, unsigned long uiValue );
00645 M5DLL_API int WINAPI PCube_setDefIncPerTurn( int iDeviceId, int iModuleId, unsigned long uiValue );
00646 M5DLL_API int WINAPI PCube_setDefBrakeTimeOut( int iDeviceId, int iModuleId, unsigned short uiValue );
00647 M5DLL_API int WINAPI PCube_setDefAddress( int iDeviceId, int iModuleId, unsigned char uiValue );
00648 M5DLL_API int WINAPI PCube_setDefCANBaudRate( int iDeviceId, int iModuleId, unsigned char uiValue );
00649 M5DLL_API int WINAPI PCube_setDefRSBaudRate( int iDeviceId, int iModuleId, unsigned char uiValue );
00650 M5DLL_API int WINAPI PCube_setDefSetup( int iDeviceId, int iModuleId, unsigned long uiValue );
00651 
00652 M5DLL_API int WINAPI PCube_getMotorCurrent( int iDeviceId, int iModuleId, float* pfValue );
00653 M5DLL_API int WINAPI PCube_getMotorSupply( int iDeviceId, int iModuleId, float* pfValue );
00654 M5DLL_API int WINAPI PCube_getTemperature( int iDeviceId, int iModuleId, float* pfValue );
00655 M5DLL_API int WINAPI PCube_getLogicSupply( int iDeviceId, int iModuleId, float* pfValue );
00656 M5DLL_API int WINAPI PCube_getMinLogicVoltage( int iDeviceId, int iModuleId, float* pfValue );
00657 M5DLL_API int WINAPI PCube_getMaxLogicVoltage( int iDeviceId, int iModuleId, float* pfValue );
00658 M5DLL_API int WINAPI PCube_getMinMotorVoltage( int iDeviceId, int iModuleId, float* pfValue );
00659 M5DLL_API int WINAPI PCube_getMaxMotorVoltage( int iDeviceId, int iModuleId, float* pfValue );
00660 M5DLL_API int WINAPI PCube_getNominalMotorCurrent( int iDeviceId, int iModuleId, float* pfValue );
00661 M5DLL_API int WINAPI PCube_getMaximumMotorCurrent( int iDeviceId, int iModuleId, float* pfValue );
00662 M5DLL_API int WINAPI PCube_getLogicUndershootTime( int iDeviceId, int iModuleId, long* piValue );
00663 M5DLL_API int WINAPI PCube_getLogicOvershootTime( int iDeviceId, int iModuleId, long* piValue );
00664 M5DLL_API int WINAPI PCube_getMotorUndershootTime( int iDeviceId, int iModuleId, long* piValue );
00665 M5DLL_API int WINAPI PCube_getMotorOvershootTime( int iDeviceId, int iModuleId, long* piValue );
00666 M5DLL_API int WINAPI PCube_getNomCurOvershootTime( int iDeviceId, int iModuleId, long* piValue );
00667 M5DLL_API int WINAPI PCube_getHMaxCurOvershootTime( int iDeviceId, int iModuleId, long* piValue );
00668 M5DLL_API int WINAPI PCube_setMinLogicVoltage( int iDeviceId, int iModuleId, float fValue );
00669 M5DLL_API int WINAPI PCube_setMaxLogicVoltage( int iDeviceId, int iModuleId, float fValue );
00670 M5DLL_API int WINAPI PCube_setMinMotorVoltage( int iDeviceId, int iModuleId, float fValue );
00671 M5DLL_API int WINAPI PCube_setMaxMotorVoltage( int iDeviceId, int iModuleId, float fValue );
00672 M5DLL_API int WINAPI PCube_setNominalMotorCurrent( int iDeviceId, int iModuleId, float fValue );
00673 M5DLL_API int WINAPI PCube_setMaximumMotorCurrent( int iDeviceId, int iModuleId, float fValue );
00674 M5DLL_API int WINAPI PCube_setLogicUndershootTime( int iDeviceId, int iModuleId, long iValue );
00675 M5DLL_API int WINAPI PCube_setLogicOvershootTime( int iDeviceId, int iModuleId, long iValue );
00676 M5DLL_API int WINAPI PCube_setMotorUndershootTime( int iDeviceId, int iModuleId, long iValue );
00677 M5DLL_API int WINAPI PCube_setMotorOvershootTime( int iDeviceId, int iModuleId, long iValue );
00678 M5DLL_API int WINAPI PCube_setNomCurOvershootTime( int iDeviceId, int iModuleId, long iValue );
00679 M5DLL_API int WINAPI PCube_setHMaxCurOvershootTime( int iDeviceId, int iModuleId, long iValue );
00680 
00681 M5DLL_API int WINAPI PCube_getKpPWMLimit( int iDeviceId, int iModuleId, long* piValue );
00682 M5DLL_API int WINAPI PCube_getCurrentLimit( int iDeviceId, int iModuleId, float* pfValue );
00683 M5DLL_API int WINAPI PCube_getMaxPWMOutput( int iDeviceId, int iModuleId, long* piValue );
00684 M5DLL_API int WINAPI PCube_setKpPWMLimit( int iDeviceId, int iModuleId, long iValue );
00685 M5DLL_API int WINAPI PCube_setCurrentLimit( int iDeviceId, int iModuleId, float fValue );
00686 
00687 #ifdef __cplusplus
00688         }
00689 #endif
00690 
00691 #endif


schunk_libm5api
Author(s): Florian Weisshardt
autogenerated on Thu Aug 27 2015 15:06:52