今天,正運動(dòng)技術(shù)為大家分享一下應用C++開(kāi)發(fā)一個(gè)激光振鏡的運動(dòng)控制例程。我們主要從新建MFC項目,添加函數庫講起,最后通過(guò)項目實(shí)戰——激光振鏡打標例程講解,來(lái)讓大家熟悉它的項目開(kāi)發(fā)。在正式學(xué)習之前,我們先了解一下正運動(dòng)技術(shù)的運動(dòng)控制器ZMC420SCAN。這款產(chǎn)品是20軸運動(dòng)控制器。ZMC420SCAN 總線(xiàn)控制器支持 ECAT/RTEX 總線(xiàn)連接,支持多達20軸運動(dòng)控制,支持直線(xiàn)插補、任意圓弧插補、空間圓弧、螺旋插補、電子凸輪、電子齒輪、同步跟隨、虛擬軸設置等;采用優(yōu)化的網(wǎng)絡(luò )通訊協(xié)議可以實(shí)現實(shí)時(shí)的運動(dòng)控制。ZMC420SCAN 總線(xiàn)控制器支持脈沖軸/總線(xiàn)軸/振鏡軸混合插補。ZMC420SCAN 支持10路脈沖輸出與編碼器反饋且支持4路振鏡軸,板載24點(diǎn)輸入,12點(diǎn)輸出,2AD,2DA,所有輸出口都支持高速PWM控制。ZMC420SCAN使用一套API函數,支持C、C++、C#、LabVIEW、Python、Delphi等開(kāi)發(fā)語(yǔ)言,支持VC6.0、VB6.0、Qt、.Net等平臺,支持Windows、Linux、WinCE、iMac等操作系統。
圖2
ZMC420SCAN 的PWM 輸出受正常輸出功能的控制,輸出口“ON”狀態(tài)下才能進(jìn)行PWM輸出,便于控制激光能量。ZMC420SCAN 的輸出0-7的具有精準輸出的功能,每個(gè)輸出的精準輸出功能相互獨立,通過(guò)MOVEOP_DELAY 與AXIS_ZSET ,來(lái)設置每個(gè)MOVE_OP 指令是否使用精準輸出以及精準輸出的延時(shí),從而實(shí)現激光的PSO 控制。ZMC420SCAN 的輸出0-7支持精準輸出且相互獨立,通過(guò)指令:MOVE_OP,AXIS_ZSET,MOVEOP_DELAY來(lái)分別控制激光的開(kāi)關(guān),精準輸出開(kāi)關(guān)及延時(shí),從而實(shí)現激光PSO控制。
ZMC420SCAN支持XY2-100振鏡協(xié)議,支持運動(dòng)控制與振鏡聯(lián)合插補運動(dòng)。上位機通過(guò)網(wǎng)口與控制器相連,獲取對應控制器的句柄,通過(guò)XY2-100協(xié)議控制振鏡軸,通過(guò)總線(xiàn)協(xié)議或者脈沖模式控制伺服或步進(jìn)軸。本地軸號4/5可以ATYPE=21 配置為第1個(gè)振鏡, 本地軸號6/7可以ATYPE=21 配置為第2個(gè)振鏡,可通過(guò) AXIS_ADDRESS 配置軸號。
1.在VS2017菜單“文件”→“新建”→“項目”,啟動(dòng)創(chuàng )建項目向導。
2.選擇開(kāi)發(fā)語(yǔ)言為“Visual C++”和程序類(lèi)型“MFC/ATL”中的“MFC應用程序”。
3.選擇類(lèi)型為“基于對話(huà)框”,下一步或者完成。下一步則往后繼續配置,完成就直接完成即可。把類(lèi)型選好,其他的可以在項目中編輯。
4.找到廠(chǎng)家提供的光盤(pán)資料,路徑如下(64位庫為例):
A.進(jìn)入光盤(pán)資料找到PC函數文件夾。
B.選擇函數庫2.1。
C.Windows平臺。
D.根據需要選擇對應的函數庫這里選擇64位庫。
E.解壓C++的壓縮包,里面有C++對應的函數庫。
F.函數庫具體路徑如下。
5.將廠(chǎng)商提供的C++的庫文件和相關(guān)頭文件復制到新建的項目里面。
6.在項目中添加靜態(tài)庫和相關(guān)頭文件。
靜態(tài)庫:zauxdll.lib, zmotion.lib
相關(guān)頭文件:zauxdll2.h, zmotion.h
A.先右擊頭文件,接著(zhù)依次選擇:“添加”→“現有項”。
B.在彈出的窗口中依次添加靜態(tài)庫和相關(guān)頭文件。
7.聲明用到的頭文件和定義控制器連接句柄。
至此項目新建完成。
1.PC函數手冊也在光盤(pán)資料里面,具體路徑如下:
2.PC編程,一般先根據控制器連接方式選擇對應的連接函數連接控制器,返回控制器句柄。接著(zhù)用返回的控制器句柄,實(shí)現對控制器的控制。
3.比如通過(guò)網(wǎng)口連接控制器,先使用ZAux_OpenEth()鏈接控制器,獲取控制器句柄handle。
4.通過(guò)獲取到的控制器句柄handle,對控制器進(jìn)行激光振鏡軸類(lèi)型的設置。
第三個(gè)參數的值有以下的模式選擇,使用振鏡軸需選擇軸類(lèi)型為21的模式,設置軸為振鏡軸類(lèi)型,振鏡軸類(lèi)型系統周期與刷新周期都要比普通軸快很多。
5.通過(guò)獲取到的控制器句柄handle,控制控制器的振鏡軸進(jìn)行多軸運動(dòng)控制,可以進(jìn)行搭配振鏡軸與普通軸進(jìn)行混合插補運動(dòng)。