時間:2020-03-17 11:52:37來源:深圳市軟贏科技有限公司
/WMX3/
軟件運動控制怎么用?
在WMX3基礎(chǔ)開發(fā)教程的上一篇里,我們講述了使用C#創(chuàng)建工程的操作,相信您對WMX3軟件已有了一定的熟悉。C++同樣也是WMX3的主要編程語言,它的操作步驟與C#有很多相同之處。接下來教程為:使用C++語言創(chuàng)建WMX3工程。
Q1 前言
創(chuàng)建工程概述
開發(fā)WMX3應(yīng)用程序首先要創(chuàng)建工程,C++是WMX3的主要編程語言之一。
C++開發(fā)所需添加的庫所在文件夾為C:\ProgramFiles\SoftServo\WMX3\Lib,其中WMX3Api.lib是必要的庫,其它庫為可選。IMDll.dll應(yīng)復(fù)制到可執(zhí)行程序同一文件夾下。
下面以C++開啟軸使能的程序為例,展示具體創(chuàng)建工程步驟。該方法通用于WMX3_V3.3及以上版本。
操作環(huán)境
系統(tǒng)環(huán)境:RTX3.7
軟件版本:WMX3_V3.4u1_64bit
VisualStudio2012
編程語言:C++
Q2 步驟
1.利用MicrosoftVisualStudio創(chuàng)建一個Win32控制臺程序,在工程引導(dǎo)中選擇默認(rèn)的配置。
圖1創(chuàng)建控制臺程序
2.打開配置管理器,當(dāng)使用64-bit版本的WMX3庫(即RTX64)時,解決方案平臺要切換到X64。
圖2配置管理器
圖3切換平臺
3.打開工程屬性頁面。導(dǎo)航至“配置屬性\C/C++\常規(guī)”,點擊“附加包含目錄”旁邊的箭頭,選擇“編輯...”。
在彈出的對話框里,把WMX3安裝目錄下的頭文件目錄包含進(jìn)來。(默認(rèn):"C:\ProgramFiles\SoftServo\WMX3\Include")
圖4配置屬性\C/C++\常規(guī)
圖5附加包含目錄
4.導(dǎo)航至“配置屬性\鏈接器\常規(guī)”。點擊“附加庫目錄”旁邊的箭頭,選擇“編輯…”。
在彈出的對話框里,把WMX3安裝目錄下的lib目錄包含進(jìn)來。(默認(rèn):"C:\ProgramFiles\SoftServo\WMX3\Lib")。
圖6配置屬性\鏈接器\常規(guī)
圖7附加庫目錄
5.導(dǎo)航至“配置屬性\鏈接器\輸入”,點擊“附加依賴性”旁邊的箭頭,然后選擇“編輯…”。
在彈出的對話框里,添加以下的dll文件:
AdvancedMotionApi.lib
ApiBufferApi.lib
CompensationApi.lib
CoreMotionApi.lib
CyclicBufferApi.lib
EventApi.lib
IMDll.lib
IOApi.lib
LogApi.lib
UserMemoryApi.lib
WMX3Api.lib
注意:①IMDLL.lib和WMX3Api.lib是必要的庫,其它庫為可選。
?、谑褂肰isualStudio2015或更高版本時,還需要把legacy_stdio_
definitions.lib和legacy_stdio_wide_specifiers.lib添加進(jìn)列表中
圖8配置屬性\鏈接器\輸入
圖9附加依賴項
6.導(dǎo)航至“配置屬性\生成事件\后期生成事件”。點擊“命令行”旁邊的箭頭,選擇“編輯…”,輸入以下語句:
copy/y"C:\ProgramFiles\SoftServo\WMX3\lib\IMDll.dll""$(OutDir)"
圖10配置屬性\生成事件\后期生成事件
圖11命令行
7.關(guān)閉工程屬性頁面,打開程序編寫頁面,添加頭文件,例如:
#include"AdvancedMotionApi.h"
#include"ApiBufferApi.h"
#include"CompensationApi.h"
#include"CoreMotionApi.h"
#include"CyclicBufferApi.h"
#include"EventApi.h"
#include"IOApi.h"
#include"LogApi.h"
#include"UserMemoryApi.h"
#include"WMX3Api.h"
8.添加下面的示例代碼,具體作用為創(chuàng)建設(shè)備,開啟通訊,開啟軸0使能,等5秒后關(guān)閉軸0使能,然后斷開通訊,關(guān)閉設(shè)備。
int_tmain(intargc,_TCHAR*argv[])
{
usingnamespacewmx3Api;
usingnamespacestd;
WMX3ApiWmx3Lib;
CoreMotionStatusCmStatus;
CoreMotionWmx3Lib_cm(&Wmx3Lib);
Wmx3Lib.CreateDevice("C:\\ProgramFiles\\SoftServo\\WMX3\\",DeviceType::DeviceTypeNormal,
INFINITE);
Wmx3Lib.SetDeviceName("MotorControl");
Wmx3Lib.StartCommunication(INFINITE);
Wmx3Lib_cm.axisControl->SetServoOn(0,1);
while(true)
{
Wmx3Lib_cm.GetStatus(&CmStatus);
if(CmStatus.axesStatus[0].servoOn)
{
break;
}
Sleep(5000);
}
Wmx3Lib_cm.axisControl->SetServoOn(0,0);
while(true)
{
Wmx3Lib_cm.GetStatus(&CmStatus);
if(!CmStatus.axesStatus[0].servoOn)
{
break;
}
Sleep(1000);
}
Wmx3Lib.StopCommunication(INFINITE);
Wmx3Lib.CloseDevice();
Sleep(3000);
return0;
}
9.打開工具WMX3Console,運行程序,監(jiān)控通訊和軸的狀態(tài)。
當(dāng)軸號變?yōu)榫G色且CommunicationState變?yōu)镺n時,證明通訊開啟;ServoOn/Off軸0處變?yōu)榫G色時,證明軸0使能開啟。
圖12WMX3Console界面
附加說明
對于64位系統(tǒng),當(dāng)編譯平臺為32位時應(yīng)注意下面三點,其他操作步驟不變
?、偬^步驟2,無需切換解決方案平臺
?、诓襟E4中WMX3頭文件目錄改為"C:\ProgramFiles\SoftServo\WMX3\Lib\x86"
③步驟7改為輸入以下語句:
copy/y"C:\ProgramFiles\SoftServo\WMX3\lib\x86\IMDll.dll""$(TargetDir)"
聲明:本文為轉(zhuǎn)載類文章,如涉及版權(quán)問題,請及時聯(lián)系我們刪除(QQ: 2737591964),不便之處,敬請諒解!
標(biāo)簽:
中國傳動網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動網(wǎng)(www.wangxinlc.cn)獨家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉(zhuǎn)載使用時須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。
產(chǎn)品新聞
更多>2025-04-30
性能躍升20%!維宏NK300CX Plus數(shù)控系統(tǒng)...
2025-04-11
rpi-image-gen:樹莓派軟件鏡像構(gòu)建的終...
2025-04-08
【產(chǎn)品解讀】全面提升精密制造檢測節(jié)拍...
2025-03-31
激光閃耀 智慧引領(lǐng) | WISE MASER 黑武士...
2025-03-20