===================================================================== = Motor Control Driver = = API-SMC(98/PC) Ver4.01 = = CONTEC Co.,Ltd. = ===================================================================== - Contents =========== Introduction Restrictions Notes The files installed Sample programs Career at version up - Introduction ============== Thank you for purchasing this product. The following descriptions of the API-SMC(98/PC) includes some material not shown in the help messages. Be sure to read it carefully. - Restrictions ============== This product corresponds to WindowsMe/98SE/98/95, and Windows Vista/ XP/2000/NT/Server 2003. Keep in mind that it does not correspond to Windows 3.1 and 16Bit application. - Notes ======= - In case of installing this product for Windows Vista/XP/2000/NT /Server 2003, please be sure to login by Administrator. - In case of executing "API-TOOL Configuration" or "Initialization utility", please be sure to login by Administrator. - How to install ===================== - Please execute the installer developed with the following places when you download it from our homepage. Development Emvironment(Full Set) C:\TEMP\APIPAC\SMC\Disk1\Setup.exe Run-Time Emvironment(Run-Time only) C:\TEMP\APIPAC\Runtime\SMC\Disk1\Setup.exe Before mounting the board when using it with Windows Vista Please execute "C:\TEMP\INF\WinVista\SMC\DPInst.exe" and install the driver. Please refer to the registration method of the hardware installed in the Development Environment. * C:\TEMP: extract place of default - It is possible to install it from Autorun.exe when installed from CD-ROM of API-PAC(W32). - The files installed ===================== - This product uses a setup program to install files in the System directory or other directory designated by the user in the following configuration. - If another API-TOOL drivers have already been installed, the files will be installed in that directory. \ CONFIG.EXE Configuration program for entry of hardware settings. APISMC.CHM Help File *1 CTSTSMC.EXE Utility program to diagnose the SMC board. SMC\INITSMC.EXE Utility program to set the initial values. SMC\VER240\SMC5TD.CHM Help file for Ver2.40 *1 SMC\SAMPLES\ Sample programs *1 *1 It is not installed in "RunTime Install". \\System - Common files for API-TOOL APCFG.DLL DLL file necessary for execution of CONFIG.EXE. APCFG.VXD Device driver for CONFIG.EXE CMESSAGE.OCX OCX for event in VB/VB.NET MSGECHO.OCX OCX for event in VB MSGECHO.DEP For Distribution Wizard - System files for API-SMC(98/PC) APISMC.DLL DLL file for calling device driver APISMC00.VXD Device driver APISMC01.VXD Device driver APISMC.DEP For Distribution Wizard - Common files for OS OC30.DLL Used in MSGECHO.OCX MFCANS32.DLL " OLEPRO32.DLL " OLEAUT32.DLL " MSVCRT20.DLL " \\system32 - Common files for API-TOOL APCFG.DLL DLL file necessary for execution of CONFIG.EXE. CMESSAGE.OCX OCX for event in VB/VB.NET MSGECHO.OCX OCX for event in VB MSGECHO.DEP For Distribution Wizard - System files for API-SMC(98/PC) APISMC.DLL DLL file for calling device driver APISMC.DEP For Distribution Wizard - Common files for OS OC30.DLL Used in MSGECHO.OCX MFCANS32.DLL " OLEPRO32.DLL " OLEAUT32.DLL " MSVCRT20.DLL " \\system32\drivers - Common files for API-TOOL APCFG.SYS Device driver for CONFIG.EXE - System files for API-SMC(98/PC) APISMC00.SYS Device driver APISMC01.SYS Device driver - Sample programs ================= The sample programs consist of the following directories for every language. \ | +--\xxx(SIO/GPIB/AIO/DIO/SMC/CNT) | +--\SAMPLES | | | +--\INC Include(header) file for C/C++ | | Module file for VB | | | +--\LIB Library file for C/C++ | | | +--\VB4 Sample program for Visual Basic Ver4.0(32bit) | | | +--\VB6 Sample program for Visual Basic Ver6.0 | | | +--\VBNET Sample program for Visual Basic.NET | | | +--\VC2C Sample program for VisualC++(C language)Ver2.0 | | | +--\VC2CPP Sample program for VisualC++(C++)Ver2.0 | | | +--\VC6C Sample program for VisualC++(C language)Ver6.0 | | | +--\VC6CPP Sample program for VisualC++(C++)Ver6.0 | | | +--\VCNET Sample program for Visual C++.NET | | | +--\VCS Sample program for Visual C#.NET | | | +--\BC45 Sample program for Borland C++(C language)Ver4.52 Explanation of a folder \SMC\SAMPLES\INC There is a file which performed the function definition for C/C++ , VB and Delphi. When a program is constructed, please use these files, include it in case of C/C++, add it to a project in case of VB. Moreover, please do not edit these files. \SMC\SAMPLES\LIB There is a LIB file for C/C++. When a program is constructed, add them to a project. In addition, the file is divided into for the Visual C++, and the Borland C++/Borland C++ Builer. ApiSmc.lib for Visual C++ ApiSmcBc.lib for Borland C++ ApiSmcCb.lib for Borland C++ Builder - Career at version up ====================== Ver4.00->Ver4.01 (Ver. Oct.2008) --------------------------------- - Start supprt Visual Studio 2008. - When the count event condition is continuously changed, it is corrected that the generation of the event stops. Ver3.55->Ver4.00 --------------------------------- - Supports Windows Vista. - Help file form change(*.HLP->*.CHM) - There is no change of the driver. Ver3.54->Ver3.55 (Ver. Aug.2006) --------------------------------- - Help and the display of the texts such as Readme are changed as follows. API-SMC(98/PC)NT,W95 -> API-SMC(98/PC) There is no change of the driver. Ver3.53->Ver3.54 (Ver. Apr.2006) --------------------------------- - Start supprt Visual Studio 2005. - GUI of "Logic Setting" is changed.("Initialization utility") Ver3.52->Ver3.53 (Ver. Aug.2005) --------------------------------- - Start supprt Windows Server 2003. - VcNet sample program correction. Ver3.51->Ver3.52 (Ver. Oct.2004) --------------------------------- - VisualC#.NET support. - The problem ended to the thread of the already started other axes at the time of SmcInit() execution is corrected. - It corrects that error information was not on the contrary normally at the time of SmcInitAll() execution. - After initialization, when SmcSetBankReady() is performed without performing SmcSetBankNumber(), it changes so that it may become an error. - At the time of SmcSetBankNumber() execution, even when it becomes a function error, the problem to which the parameter was set is corrected. - After bank operation, if the number of banks is changed by SmcSetBankNumber(), status of operation will come "during operation" and the problem which an error (553) generates will be corrected. Ver3.50->Ver3.51 (Ver. Nov.2003) --------------------------------- - In interpolation control, the problem which had not returned the error (561H) in the case of the case where acceleration comes out of the range is corrected. - It is a parameter addition to Set/GetInitialParam(). - Correct so that a clear pulse can be outputted at the time of ORG operation. - When acceleration is 0, correct the problem which has not been slowed down correctly. - Add the SmcSetRevisePosition function. Ver3.43->Ver3.50 (Ver. Dec.2002) --------------------------------- - VisualBasic.NET support. - VisualC++.NET support. Ver3.42->Ver3.43 (Ver. Aug.2002) --------------------------------- - In SmcBankEvent(), the point that the timing of event generating had become at the time of not completion of a bank (frame) of operation but a start is corrected. - In the specification of SmcCalcBankParam(), when the interpolation is not made correctly, it changes so that error code 561H may be returned. - In the "Default Motion Parameters Setting" dialog of Initial Setup, when the value of resolution is set less than to 1, the problem which an error of "Division by 0" generates in SmcCalcBankParam() is corrected. - The following functions are added to a SmcSet/GetInitialParam() function. - The function set up so that weight of 200uSec may not be put in at the time of a turn is added at the time of common pulse use. Ver3.41->Ver3.42 (Web 2002.03.11) --------------------------------- - A function is added (SmcSet/GetInitialParam). An addition and problem of the following functions are improved with this function. - Although only the slowdown stop was completed by SD (Slow Down) signal until now, it became possible to perform only a slowdown (for it not to stop). - In a setup which uses SD signal, a problem with the case where ORG operation cannot be performed correctly is corrected. Ver3.40->Ver3.41 (Web 2002.02.08) --------------------------------- - In operation which used the bank, if the status of a board is checked frequently, status will correct the problem which may not be displayed correctly. - In operation which used the bank, the problem which may not become as move speed specified, when SmcSetTargetSpeed() was used is corrected. - In an initial-setting utility, the problem to which logic may be fixed by setup of a general-purpose input terminal (IN1-IN7) is corrected. - The problem whose mutual starting was not completed correctly is corrected in an initial-setting utility and a diagnostic program. Ver3.32->Ver3.40 (Ver. Jan.2002) -------------------------------- - Support WindowsXP. - Under the Windows NT environment, a modification has been made that allows the driver to access the assigned I/O spaces even though these I/O spaces are not within the specification definition. - In the bank moving, when SMC_PASS is included, the problem which has not synchronized normally is corrected. Ver3.30->Ver3.32 (Web 2001.10.03) --------------------------------- - In SmcCalcBankParam(), the problem which the error of "Division by 0" generates and when acceleration is enlarged, the problem which does not become an exact value is corrected. - If SmcGetLimitSts() is performed during ORG operation or SlowDown operation, the problem which may not be stopped even if it passes Limit will be corrected. Ver3.21->Ver3.30 (Ver. Aug.2001) -------------------------------- - In the straight line interpolation for bank, the problem that moved distance increased and it could not move synchronously was fixed. - In PTP movement, the problem that speed of only about till 20KPPS could rise and the speed becomes above 20KPPS it turned to about 1KPPS was fixed. - In the straight line interpolation, the precision of straight line movement has been improved. - In Initialization utility, the problem that signal logic set could not be saved was fixed. - When use SMC-3(PC){SmcRunSts function, in case of start from Limit position and normally stop, the problem that stop factor becomes to the stop factor for Limit was fixed. Ver3.20->Ver3.21 (Web 2000.12.01) --------------------------------- About the Driver : - When use 'S curve', could not stop with slow down was fixed. - When use SmcSetBankBaseSpeed(), a speed could not be slowed down was fixed. - In case of same speed between StartSpeed and TargetSpeed, acceleration didn't become effective was fixed. - In case of stop by command on ORG movement, the problem that stop factor was 'Stop by other AXIS' was fixed. - In case of stop by SmcMotionDecStop(), the problem that could not change DecelRate was fixed. - In case of change speed during the PTP movement, the problem that could not be slowed down was fixed. The next limitation was added along with this modification. - AccelRate and DecelRate can't change it in the speed change during the PTP movement. About the Help : - The meaning of AccelRate and DecelRate is changed. - Ver3.21 after (New) AccelRate : Acceleration Rate. Acceleration to increase the speed. DecelRate : Deceleration Rate. Deceleration to decrease the speed include stop. - Ver3.20 before (Old) AccelRate : Acceleration and Deceleration Rate. Acceleration to increase, or Deceleration to decrease the speed. DecelRate : Final Deceleration Rate. Deceleration to decrease the speed when stop. - About the details of AccelRate and DecelRate. There are the following relations between AccelRate and DecelRate. - In case of DecelRate specified to 0 : The value of AccelRate is used in both Acceleration and Deceleration. - In case of DecelRate specified to not 0 : The value of AccelRate is used in Acceleration, the value of DecelRate is used in Deceleration. Ver3.11->Ver3.20 (Ver. Oct.2000) -------------------------------- - Support for WindowsMe - Change interface of Initialization utility. - Mask function was added for Diagnostic utility Ver3.10->Ver3.11 (Web 2000.08.07) --------------------------------- - SmcSetLimitMask function was fixed. - When an executive speed is high speed, the problem that it might not stop at ORG was fixed. - The problem which may overflow when the straight line interpolation function with big value was fixed. - In Initialization utility, in case of Regacy function by SMC-2P(PCI) or SMC-4P(PCI) was selected, the problem that setup data may not be kept normally was fixed. Ver3.01->Ver3.10 (Ver. Apr.2000) -------------------------------- - Support for Windows 2000 - Add the Console Aprication Sample - Support for machine with multiple CPU. - Add the SmcMotionStartAll function. - Add the SmcSetBankBaseSpeed function. - Add the SmcGetBankBaseSpeed function. Ver3.00->Ver3.01 (Ver. Nov.1999) -------------------------------- - Add the SmcMotionBankStop function. - Add the SmcExit function. - Add the SmcExitAll function. Ver2.40->Ver3.00 (Ver. Aug.1999) -------------------------------- - Support for the SMC-2P(PCI) and SMC-4P(PCI) boards. - Attachment of the Initialization utility. - Attachment of the Diagnostic utility. - Provision of synchronous control. - Support for multiple processes. - Add the basic operation setup function. - Add the expanded operation setup function. - Add the control signal setup function. - Add the operational status acquisition function. - Add the initialization function. - Add the motor operation function. - Add the parameter calculation function. - Add the event function. Ver2.30->Ver2.40 (Ver. Jan.1999) -------------------------------- - Support Windows98 - Add the function to set the motor stop completion event message. It is added the function such as SmcSetEvent. - Add the function to set the specified location It is added the function such as SmcSetLoc - Inprove SmcGetLoc function to use on its own. Before you execute SmcGetLoc, you do't need to execute SmcRunSts. - Inprove SmcStop function to use on its own. After you execute SmcStop, you do't need to execute SmcRunSts. - Inprove SmcDecStop function to use on its own. After you execute SmcDecStop, you do't need to execute SmcRunSts. - Support Visual C++ Ver6.0, Visual Basic Ver6.0 Ver2.21->Ver2.30 ----------------- - Add the board number Usable board number is 16. - Add the UnInstaller Ver2.10->Ver2.21 ----------------- - Correct the Help File. Ver2.00->Ver2.10 ---------------- - Add the function to sets the motor current position as a reference point. It is added the function such as SmcLocReset and the sample program for the function - Add the function to set the bit of Limit Mask Port to enable or disable limit signal It is added the function such as SmcLimMask and the sample program for the function In case that -LIM and ORG are commonly used, this function is useful if -LIM is unnecessary. ORG SS1 SS2 +LIM +---------+---------+---------+ - Support Visual C++ Ver5.0, Visual Basic Ver5.0 Ver1.00->Ver2.00 ---------------- - Support WindowsNT Ver4.0