===================================================================== = Motion Control Driver = = API-SMC(WDM) Ver4.50 = = CONTEC Co.,Ltd. = ===================================================================== - Contents =========== Introduction Notes Installation The files installed Sample programs History of version-up - Introduction ============== Thank you for purchasing this product. The following descriptions of the API-SMC(WDM) includes some material not shown in the help messages. Be sure to read it carefully. - Notes ======= - Be sure to login by Administrator. - API-SMC(WDM) is a different product from driver (API-SMC(98/PC)) for the version motion control so far. - This driver cannot use the hardware used with API-SMC(98/PC). - Installation ============== - Installation of development environment(help, sample, tool, etc) You must uninstall older version of development environment from [control panel] before installing newer version. Unzip downloaded file and execute following setup file. Apipac\SmcWdm\Disk1\Setup.exe Install from Autorun.exe. - Installation of device driver You must uninstall older version of device driver before installing newer driver. For uninstallation or installation procedure, refer to following help file in API-PAC(W32) Media. \Apipac\Help\Hwinst\Eng\Apitool.chm For uninstallation or installation procedure, refer to following help file which is created after unzipping the downloaded file. Help\SmcWdm\Eng\Apitool.chm - 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. \ CONTEC.ICO Icon file CONTEC_APIPACW32_HOMEPAGE.URL Shortcut of API-PAC(W32)HP SMCWDM\CSMC.CHM Help File SMCWDM\README.TXT This file SMCWDM\SAMPLE\ Sample programs SMCWDM\SAMPLEEXE Executive files of sample programs - Sample programs ================= The sample programs consist of the following directories for every language. - API-SMC(WDM) 32 bit Edition \ | +--\SMCWDM | +--\SAMPLE | +--\INC Include(header) file for every language | Module file for VB | +--\LIB_I386 Library file for every language | +--\VB6 Sample program for Visual Basic Ver6.0 | +--\VBNET2005 Sample program for Visual Basic .Net | +--\VC6 Sample program for VisualC++(C++)Ver6.0 | +--\VCNET2005 Sample program for Visual C++ .Net (MFC) | +--\VCNET2013 Sample program for Visual C++ .Net | +--\VCNETCLI2005 Sample program for Visual C++ .Net (C++/CLI) | +--\VCS2005 Sample program for Visual C# .Net - API-SMC(WDM) 64 bit Edition \ | +--\SMCWDM | +--\SAMPLES | +--\INC Include(header) file for every language | +--\LIB_X64 Library file for every language | +--\VBNET2005 Sample program for Visual Basic .Net | +--\VCNET2005 Sample program for Visual C++ .Net (MFC) | +--\VCNET2013 Sample program for Visual C++ .Net | +--\VCNETCLI2005 Sample program for Visual C++ .Net (C++/CLI) | +--\VCS2005 Sample program for Visual C# .Net - Career at version up ====================== Ver4.40->Ver4.50 -------------------------------- - Checked the operation on Windows 10 2004. Ver4.30->Ver4.40 -------------------------------- - Checked the operation on Windows 10 19H2. - Added a function to display the pulse control LSI model of the following device to a diagnosis report. :SMC-4DL-PCI, SMC-8DL-PCI, SMC-4DL-PE, SMC-8DL-PE - When you appointed NULL pointer in an argument, a right error code (10100) fixed a phenomenon not to return. :SmcWGetBankInterpolation, SmcWGetBankArcPoint, SmcWGetBankArcParam - When you set a value out of the set range in argument SyncBoard of the B function, right error code (10201) fixed a phenomenon not to return. Ver4.20->Ver4.30 -------------------------------- - Add support development language Support development language: Microsoft Visual Basic 2019 Microsoft Visual C# 2019 Microsoft Visual C++ 2019 Ver4.10->Ver4.20 -------------------------------- - Checked the operation on Windows 10 19H1. Ver4.00->Ver4.10 -------------------------------- - Add support development language Support development language: Microsoft Visual Basic 2017 Microsoft Visual C# 2017 Microsoft Visual C++ 2017 Ver3.90->Ver4.00 -------------------------------- - Supports "Driver Signing policy changes in Windows 10". - When SmcWSetSoftLimit sets the value (long PLimCount, long MLimCount) to a value larger than "short", SmcWGetSoftLimit can not acquire normal value when this setting value is acquired. Ver3.80->Ver3.90 -------------------------------- - Add Supports new device. :SMC-4DF2-PCI, SMC-8DF2-PCI Ver3.70->Ver3.80 -------------------------------- - Add support development language Support development language: Microsoft Visual Basic 2015 Microsoft Visual C# 2015 Microsoft Visual C++ 2015 Ver3.63->Ver3.70 -------------------------------- - Supports Windows 10 - SHA-2 Digital signature Ver3.62->Ver3.63 -------------------------------- - When setting the SmcWSetOrgMode LimitTurn=3, CW in [+LIM ON], or CCW in [-LIM ON], when the motion start error(20204) occurs, and can not operate start. Fix this. - In Windows 8 32bit, Fixed CSMC.SYS version information can not be acquired in the diagnosis program. Ver3.60->Ver3.62 -------------------------------- - Fixed in Bank operation if operated Bank, set acceleration time 0 and then to the Bank sets the acceleration time and again started the Bank works, if the Bank does not work in accelerated time, acceleration time "0". - If continues on a low spec CPU under high load conditions, multiple axes simultaneously in high frequency and continuous raises events that event through fixed that could occur. Ver3.53->Ver3.60 -------------------------------- - Supports Windows 8.1 - Add support development language Support development language: Microsoft Visual Basic 2013 Microsoft Visual C# 2013 Microsoft Visual C++ 2013 Ver3.50->Ver3.53 -------------------------------- - At the time of the origin return motion start which uses ORG, if a LIM is ON, a start of operation cannot be carried out. The mode addition which uses ORG even if the LIM was ON and in which a origin return motion start is possible. (The argument of a SmcWSetOrgMode : LimitTurn=2) - The origin return motion function addition which uses a LIM signal input. (The argument of a SmcWSetOrgMode : LimitTurn=3) - When a counter input error and the pulsar input error are detected inside a driver during origin return motion, it corrects that origin return motion stops. Ver3.45->Ver3.50 -------------------------------- - Supports Windows 8 - Add support development language Support development language: Microsoft Visual Basic 2012 Microsoft Visual C# 2012 Microsoft Visual C++ 2012 - motion type will be rewritten, if MotionType is changed during motor operation and SmcWSetReady is performed. As a result, a status of motion and operation type under the operation are affected. Ver3.42->Ver3.45 -------------------------------- - A DLL file defines an ordinal number. Ver3.41->Ver3.42 (Ver. July.2013) -------------------------------- - When it installs except Japanese environment, by other languages, it is an English display. Ver3.23->Ver3.41 -------------------------------- - Add Supports new device. :SMC-4DFM-PCIS, SMC-8DFM-PCIS - Add new function. (*):Only SMC-4/8DFM-PCIS can be used. Counter latch FIFO function Count match trigger output FIFO function Manual pulser function Ver3.22->Ver3.23 (Web Release) -------------------------------- - If very short might acceleration time becomes zero with the operation of the set value of the acceleration time. Ver3.21->Ver3.22 -------------------------------- - Add new function. General-purpose event function. :SmcWIrqEvent (Support LTC Event) Retrieves the status of I/O control signal. :SmcWGetCtrlInOutStatus Sets the behavior of the soft limit. (*):Only SMC-4/8DF-PCI can be used. :SmcWSetSoftLimit, SmcWGetSoftLimit Ver3.14->Ver3.21 (Web Release) -------------------------------- - Support WOW64 (Since Windows 7) - MotionType=7,8,9 for added with Ver3.14, Can not get in the SmcWGetReady and SmcWGetBankReady. MotionType values that have been set. Ver3.12->Ver3.14 -------------------------------- - SmcWSetReady: Add Parameters MotionType=7. - SmcWSetBankReady: Add Parameters MotionType=8(single) and MotionType=9(loop). -- Corrected target speed without changing the acceleration and deceleration. - It is corrected that If set to a value close to zero acceleration/deceleration time may cause the acceleration/deceleration time is set to zero. - When run the bank interpolation deceleration stop during operation, modification can not stop the deceleration. - When the AccelTime is set to "0" in the interpolation operation, regardless of DecelTime is also being set, during deceleration, the operation of the DecelTime "0" unconditionally. Ver3.00->Ver3.12 -------------------------------- - SmcWSetMotionChangeReady: Add Parameters ChangeType=7. - Only change the speed without changing the rate of acceleration and deceleration - Fixed when setting ChangeType=4, after a slowdown in MotionChange, can not stop the deceleration in the set deceleration time. Ver2.53->Ver3.00 (Web Release) -------------------------------- - BX300 support. - CSMC.SYS version information can not be acquired successfully in the diagnostic report. Ver2.52->Ver2.53 -------------------------------- - Add support development language Support development language: Microsoft Visual Basic 2010 Microsoft Visual C# 2010 Microsoft Visual C++ 2010 Microsoft Visual C++(C++/CLI) 2010 Ver2.51->Ver2.52 -------------------------------- - The SMC-4DF-PCI/SMC-8DF-PCI, "Z-phase input" using the operation ORG, If you do not stop and set "Z-phase count", "Z-phase input " fix to stop before the phenomenon. Ver2.50->Ver2.51 (Ver. Mar.2011) -------------------------------- - If the event function is continuously executed, it is corrected that 10005 errors (COMMON_ERROR_CREATE_THREAD) or memory leaks might occur. - It is corrected that the acquisition value of the SmcWGetStopStatus() becomes 0xFF when the SmcWMotionStop() and the SmcWMotionDecStop() are executed in the starting point resume operation. - It is corrected that operation stops on the way when the error not intended among drivers occurs in the starting point resume operation. (Are the noise etc. causes?) - When a single axis operates after the interpolation operates when the DL board is used (PTP/JOG/ORG both :) The deceleration stop is done if it is SmcWMotionDecStop(), and it is corrected that operation doesn't stop for the SmcWMotionStop(). Ver2.41->Ver2.50 -------------------------------- - Add Supports new device. :SMC-2DF-FIT Ver2.40->Ver2.41 -------------------------------- - When the number of set synchronous object axes is decreased with SmcWSetSync, trouble in which the setting is not reflected is corrected. Ver2.36->Ver2.40 (Ver. Jan.2010) -------------------------------- - Supports Windows 7 - It is corrected not to decelerate at the set deceleration time when ChangeType=4 is set by the SmcWSetMotionChangeReady(). - It is corrected not to be able to acquire correct StartSpeed with SmcWGetStartSpeed after SmcWSetMotionChangeReady is executed. - When deceleration stop (SmcWMotionDecStop) is executed after it changes the speed to TargetSpeed(B) by MotionChange while operating by TargetSpeed(A), the deceleration stop doing and it is corrected to do the deceleration stop with TargetSpeed(A) by the start per hour degree (StartSpeed at MotionStart). - The part with the possibility that division by zero is done in SmcWSetRead, SmcWSetMotionChangeReady, and SmcWSetBankReady is corrected. - Add new function. Output pulse width (duty ratio) setting :SmcWSetPulseDuty, SmcWGetPulseDuty Z-aspect count operation setting :SmcWSetZCountMotion, SmcWGetZCountMotion Get Z-aspect count function :SmcWGetZCount Get operation speed :SmcWGetMoveSpeed Ver2.35->Ver2.36 -------------------------------- - Because deceleration/deceleration stop by the SD signal was not able to be maintained if SD doesn't maintain "ON" state, the latch setting is added. SmcWSetSDMode() Add SDMode=2(decel stop + SD latch)/SDMode=3(decel+SD latch) -------------------------------- Ver2.34->Ver2.35 (Web 2009.02.16) -------------------------------- - Supports Windows Server 2008 / Server 2008 x64 Edition. - It is corrected might hang up when the driver is unloaded when using it with Vista. Ver2.33->Ver2.34 (Ver. Jan.2009) -------------------------------- - Supports Visual C++ .Net C++/CLI. - Supports "Straight line interpolation 2". Ver2.32->Ver2.33 (Web 2008.07.02) -------------------------------- - Start supprt Visual Studio 2008. - The Help folder is made for the WEB download package and the file is added. - The diagnostic program is changed. - There is no change of the driver. Ver2.31->Ver2.32 (Web 2008.04.25) -------------------------------- - Supports API-TIMER(WDM) - When SmcWInit is executed in other processes when the motor of each two or more processes works by two or more axes, the axis that operates by the object board is stopped, is executed. - Even if SmcWInit is executed with the driver loading not completed when registered OS starts and it is executed that it is degrees SmcWInit after completing loading how many as for the function error, it is corrected to the start-up of the application including this driver function might become a function error. - When maximum speed 65535[pps] in resolution "1" is set at the start/target speed of when the DF type is used, and SmcWSetReady is executed, it is corrected that the target speed is changed to maximum speed 16384[pps] of the DL type. - Cmessage.ocx might not be able to be installed in Vista, is corrected. VerUp > setup.exe:Ver1.0.1, ccoinst.dll:Ver1.0.3 Ver2.30->Ver2.31 -------------------------------- - To begin "Z aspect count" of timing that ORG is turned on when the starting point resume operation of the condition of "Constant speed/direction specification/Z aspect use" is begun, it changes. In addition, "Z aspect count" is begun from timing that ORG is turned on even if there is no direction specification if it is a constant speed. Ver2.25->Ver2.30 (Ver. Jan.2008) ------------------------------------- - Add Supports new device. :SMC-4DF-PE, SMC-8DF-PE - File ccoinst.dll improved in the version. - It is possible taking correction of normal MotionType value with SmcWGetBankReady(). - It is corrected that it was not operation of "Perform uniform speed motion in target speed when target speed is lower than start speed." that has been described to help. Ver2.24->Ver2.25 (Web 2007.10.24) -------------------------------- - When you execute MotionStart with MotionType=0 (No motion) of SmcWSetReady(), it is corrected might hang up. - Start direction (bStartDir) was not disregarded at the PTP motion, and the parameter was checked as well as JOG etc. It is corrected that the error by the Start direction occurred when PTP operates the result. - It is corrected that status (StopSts) acquired with SmcWGetStopStatus becomes "FF(H) End of operation function" at the moment as well as the correction of Ver2.22. Ver2.23->Ver2.24 -------------------------------- - Solves the problem that occures while using ACX-PAC(W32) - The deceleration timing is delayed when a big value is set at the target speed and a big value is not set to the speed resolution, it is not possible to decelerate up to the start speed, and it is corrected to stop. Ver2.22->Ver2.23 (Ver. Oct.2007) -------------------------------- - It corresponds to Visual Studio 2005 Express Edition. (Except C++) - No driver file correction. Ver2.21->Ver2.22 (Web 2007.08.31) ------------------------------------- - It is corrected not to have operated normally in sample BANKARC and the direction of CCW. - Help correction. Because the description of the SmcWSyncMotionStart had come off chiefly, a postscript is added. - The trouble of the diagnostic program is corrected. - Even if the development environment is installed when 64bitOS is used, it is corrected not to be able to be likely to do the short cut to sample EXE¤ Diagnosis and help from the start menu. - It is corrected that ORG becomes "During stop" at the moment touching turn and } LIM of the deceleration stop for turning on status (MoveSts) acquired with SmcWGetMoveStatus according to the timing of the turn of the stop, While ORG is operating Ver2.20->Ver2.21 ------------------------------------- - In "ORG operation" of SMC-4/8DF-PCI, When the stop event is set and operation of "EndDir" setting begins in "The start dir is corresponding in the end dir" condition, it is corrected the generation of the stop event two times. - It is corrected to decelerate instantaneously when stopping though the deceleration time is set when "0" is set and operated at the acceleration time. - When the motion changes (When setting to the argument of SmcWSetMotion ChangeReady as ChangeType=4), it is corrected that the acceleration/ deceleration time is not normally reflected. Ver2.10->Ver2.20 (Ver. Jun.2007) ------------------------------------- - Supports Windows x64 Edition - Visual C++.NET, Visual Basic.NET, C#.NET support - The "0xC000142" error occurs if the function is executed with the board is not installed, and the driver copied. It is corrected. - In "Limit Signals for Input" of Diagnosis program, to return to the "Initial Setup" at limit ON and to change logic, it changes. - Device name generation sequence change. Therefore, Cpropsub.exe is deleted from the installation composition. Ver2.00->Ver2.10 (Web 2007.04.23) ------------------------------------- - When SmcWSetBankInterpolation is executed with SMC-4/8DL-PCI, it is corrected to become an error. - "Straight line interpolation 1" It is corrected to operate at the beginning speed without accelerating when big moved distance is set from "Interpolation control axis" to other interpolation axes when setting it. - To return board ID and the axis number as a parameter when the event is generated, it changes. - It is corrected that status doesn't change like "Moving" though the deceleration stop is done when SmcWMotionDecStop is executed for "Interpolation control axis" while "Straight line interpolation 1" is operating by SMC-4/8DF-PCI. Moreover, it is also corrected not to stop even if the function is executed for other axes for the interpolation. - VC sample "Ctlio" "BaseMove" "Status" When the device name was changed, SmcWSetInitParam came to be executed. Because it is processing without the necessity, it deletes it. Ver1.20->Ver2.00 (For SMC Ver. Feb.2007) ------------------------------------- - Add Supports new device. :SMC-4DF-PCI, SMC-8DF-PCI - Add new function. (*):SMC-4/8DL-PCI cannot be used. Synchronous motion function :SmcWSetSync, SmcWGetSync, SmcWSyncMotionStart Bank event :SmcWBankEvent(*) Get bank number :SmcWGetBankNo Bank/Interpolation Setting :SmcWSet/GetBankNumber, SmcWSet/GetBankReady, SmcWSet/GetBankDistance, SmcWSet/GetBankResolveSpeed, SmcWSet/GetBankStartSpeed, SmcWSet/GetBankTargetSpeed, SmcWSet/GetBankAccelTime, SmcWSet/GetBankDecelTime, SmcWSet/GetBankSSpeed, SmcWSet/GetBankInterpolation, SmcWSet/GetBankArcPoint(*), SmcWSet/GetBankArcParam(*) - Output pulse counter count agreement signal (CP1) and encoder counter count agreement signal (CP2) are added to SmcWSetCtrlTypeOut. As a result, when each count agreement event is generated, it the signal outputs it (level). - It is corrected to turn when stopping as it is ORG operation, and the direction specification doesn't exist by passing ORG when assuming Z aspect use setting and to turn after it operates of Z aspect count. - The homogeneous event factor in Disable corrects only to the start of two event processes or more and one the event generation at homogeneous event factor Enable. Ver1.10->Ver1.20 (Ver. Feb.2007) - Supports Windows Vista - Adds digital-signing to device driver - Adds device driver auto-installation function (W2000 series only) Ver1.00->Ver1.10 (Ver. Nov.2006) ------------------------------------- - Add new function. Motion change :SmcWMotionChange, SmcWSetMotionChangeReady, SmcWGetMotionChangeReady Get latch counter :SmcWGetLatchOutPulse, SmcWGetLatchCountPulse event :SmcWStopEvent, SmcWCountEvent - Even if the LIM or the ARM is being input when SmcWMotionStart is executed, it is corrected not to have returned the error. - It is corrected that the following ORG search operation is not done when stopping outside the ORG sensor without the end direction specification when the ORG operation execution is done. Ver1.00 (Ver. Aug.2006) ------------------------------------- - First release.