網(wǎng)上有很多關(guān)于pos機(jī)自動鎖螺絲機(jī),非標(biāo)自動化之運(yùn)動控制卡編程及應(yīng)用的知識,也有很多人為大家解答關(guān)于pos機(jī)自動鎖螺絲機(jī)的問題,今天pos機(jī)之家(www.shineka.com)為大家整理了關(guān)于這方面的知識,讓我們一起來看下吧!
本文目錄一覽:
pos機(jī)自動鎖螺絲機(jī)
目 錄
一、運(yùn)動控制簡介
二、運(yùn)動控制系統(tǒng)組成
三、運(yùn)動控制卡特性
四、運(yùn)動控制卡選型
五、運(yùn)動控制卡在高級編程語言中的使用
六、凌華AMP-204C編程流程
一、運(yùn)動控制簡介
簡單地說,運(yùn)動控制就是對機(jī)械運(yùn)動部件的位置、速度等進(jìn)行實時的控制管理,使其按照規(guī)劃的運(yùn)動軌跡和規(guī)定的運(yùn)動參數(shù)進(jìn)行運(yùn)動。
運(yùn)動控制卡是基于PCI總線的高集成度、高可靠度的脈沖式運(yùn)動控制卡。
常用的運(yùn)動控制卡品牌有研華運(yùn)動控制卡,凌華運(yùn)動控制卡,雷賽運(yùn)動控制卡等
二、運(yùn)動控制系統(tǒng)組成
運(yùn)動控制卡:速度曲線規(guī)劃、路徑規(guī)劃、位置脈沖輸出
驅(qū)動器: 把普通電能轉(zhuǎn)化為電機(jī)所需要的電能
電 機(jī): 產(chǎn)生推動負(fù)載的扭矩
位置傳感器: 提供機(jī)械移動部件實時的位置和速度
2.1 死循環(huán)控制系統(tǒng)
特點:
?運(yùn)動控制卡送出速度控制命令,驅(qū)動電機(jī)運(yùn)動
?在運(yùn)動控制卡上做PID增益調(diào)節(jié),定位精度高
2.2 半死循環(huán)控制系統(tǒng)
特點:
?運(yùn)動控制卡送出位置與速度命令
?在運(yùn)動控制卡上做PID增益調(diào)節(jié),定位精度比死循環(huán)差
2.3 開環(huán)控制系統(tǒng)
特點:
?運(yùn)動控制卡送出位置與速度命令
? 定位精度最差
三、運(yùn)動控制卡特性
3.1 點對點運(yùn)動
?點對點運(yùn)動是指在預(yù)定的速度規(guī)劃下控制某一軸由 A 位置移動到 B 位置。
3.2 直線插補(bǔ)
、?運(yùn)動軌跡是直線。為了完成多維直線運(yùn)動,需要任意2軸, 3軸或甚至6軸都需要進(jìn)行線性插補(bǔ)。
3.3 圓弧插補(bǔ)
?運(yùn)動軌跡是圓弧。為了完成多維圓弧運(yùn)動,需要任意2軸或3軸進(jìn)行圓弧插補(bǔ)。
3.4 點表運(yùn)動
運(yùn)動控制卡開辟一個N字節(jié)的緩存區(qū)存放大量的位置信息,用戶通過相關(guān)的函數(shù)來達(dá)成多線段的連續(xù)運(yùn)動。點表運(yùn)動包含了一系列的直線插補(bǔ)和圓弧插補(bǔ)指令。
3.5 多軸同步運(yùn)動
多軸同步運(yùn)動指用戶可以設(shè)定某一軸 ( 從軸) 和另一軸( 主軸) 的同步運(yùn)動關(guān)系,這個關(guān)系類似機(jī)械上的齒輪結(jié)構(gòu)。
3.6 位置比較觸發(fā)
?用戶先確定一個電機(jī)運(yùn)動位置表,運(yùn)動控制卡會把當(dāng)前電機(jī)運(yùn)動位置與這個位置表進(jìn)行比較,一旦位置符合,運(yùn)動控制器就會發(fā)出一個或者一串觸發(fā)脈沖。
四、運(yùn)動控制卡選型
4.1 運(yùn)動控制卡接口選擇
運(yùn)動控制卡一般有PCI、RS232、RS485、網(wǎng)口、USB等幾種接口。
如果運(yùn)算量比較大、功能復(fù)雜,選擇PCI和工控機(jī)比較好,工控機(jī)具備PCI卡槽,運(yùn)動控制卡一般都支持多種高級程序設(shè)計語言,利于程序開發(fā)。
如果選擇HMI(人機(jī)界面)配合運(yùn)動控制卡進(jìn)行運(yùn)動控制,則RS232、RS485 和網(wǎng)口是比較好的選擇,因為HMI一般都帶有這樣的接口;另外需要運(yùn)動控制卡具有標(biāo)準(zhǔn)的通信協(xié)議。
如果用單片機(jī)/DSP/FPGA做主控進(jìn)行控制,則RS232是比較好的選擇,因為 一般的這樣的主控都具有RS232接口,物理上非常方便連接。
4.2 運(yùn)動控制卡功能選擇
運(yùn)動控制卡一般能實現(xiàn)的功能是比較相似的,一般都包括歸零、定速、點位 、直線插補(bǔ)、多軸聯(lián)動插補(bǔ)和圓弧插補(bǔ)等功能。用戶要根據(jù)自己的需要進(jìn)行選擇,功能的要求一般是符合自己用就可以,沒必要多而全,從軟件工程的角度來說,功能越多,可靠性越低,不需要的功能反而是累贅。一般的情況下,功能越多,價格也越高。所以功能的選擇上,一般以夠用為標(biāo)準(zhǔn),可以適當(dāng)考慮未來的擴(kuò)展。
4.3 運(yùn)動控制卡性能選擇
運(yùn)動控制卡的性能一般包括通信速度、響應(yīng)速度和控制速度(脈沖速度)。用戶需要根據(jù)自己的應(yīng)用的最高要求,計算自己需要的性能指針,然后預(yù)留 20%左右的余量,一般都可以滿足未來的要求,沒有必要進(jìn)行個別指標(biāo)的強(qiáng) 烈追求,需要綜合進(jìn)行考慮,否則會付出不必要的成本。比如步進(jìn)控制器的 一般接收脈沖的能力是80KHz左右,你選1MHz的脈沖速度,是沒有任何意義 的。如果根據(jù)整機(jī)設(shè)計計算出需要達(dá)到的精度需要500KHz,那一定要選擇滿 足這個要求的運(yùn)動控制卡。
4.4 運(yùn)動控制卡可靠性選擇
用戶使用運(yùn)動控制卡,一定非常關(guān)心運(yùn)動控制卡的穩(wěn)定性。一個控制系統(tǒng)的 穩(wěn)定性,是由幾個部分組成的,包括電機(jī)和驅(qū)動的可靠性(比如驅(qū)動器)、 整機(jī)電子學(xué)的可靠性(比如電源)、運(yùn)動控制卡硬件的可靠性、運(yùn)動控制卡 嵌入式軟件的可靠性、主控軟件的可靠性(比如HMI的組態(tài)軟件,PC軟件異 常情況處理等)。一般的能經(jīng)過市場檢驗的運(yùn)動控制卡,在隔離設(shè)計(比如 電源隔離、光耦隔離等)、濾波和保護(hù)(限位保護(hù)、接口保護(hù))等都是有考 慮的,能力上不會有多大的差別。
4.5 運(yùn)動控制卡價格選擇
選擇性價比高的運(yùn)動控制卡
4.6 運(yùn)動控制卡易用性選擇
易用性包括硬件的易用性和軟件的易用性。硬件的易用性需要聯(lián)機(jī)方便實用 ,從用戶方便實用的角度考慮,比如一個接插件螺絲空位上需要插入十幾根電線再擰螺絲是很難的,也不可靠的。軟件的易用性包括文文件的質(zhì)量、例程的質(zhì)量和軟件入手的難度上,重要的是能快速有效的完成自己需要的功能,而不是很復(fù)雜很難用。
五、運(yùn)動控制卡在高級編程語言中的使用
5.1.在VS2010中創(chuàng)建程序
5.1.1.啟動Visual Studio 2010,選擇“文件”→“新建” →“項目”→“Windows窗體應(yīng)用程序”
名稱可自主選擇如“Motion”;
5.1.2.點擊方案資源管理器,點擊引用,鼠標(biāo)右鍵點擊選擇添加引用,加入需要添加的引用,如研華1245AE加入的引用為“AdvMotAPI.dll”;
5.1.3.至此程序已創(chuàng)建完成可以開始后續(xù)的編程工作
5.2. 程序接口規(guī)劃
5.2.1.界面規(guī)劃如下圖所示
5.3. 程序編寫框架
六、運(yùn)凌華AMP-204C編程流程
6.1 系統(tǒng)&初始化
n I32 APS_initial(I32 *BoardID_InBits, I32 Mode)
- 板卡初始化
nI32 APS_load_parameter_from_flash( I32 Board_ID )
- 從板卡Flash載入?yún)?shù)
nI32 APS_load_param_from_File( const char *pXMLFile )
- 從XML格式文件中載入?yún)?shù)
注意:推薦使用從板卡Flash載入?yún)?shù)
6.2 IO狀態(tài)獲取
n I32 APS_motion_io_status( I32 Axis_ID )
- IO狀態(tài)獲取
注意:
1、在正式操作機(jī)構(gòu)前,必須確認(rèn)相關(guān)IO的狀態(tài),比如EL、ALM、ORG、EZ、INP等的狀態(tài),因為后面的回零、精確定位等需要用到上述IO。
2、推薦使用多線程來實時監(jiān)視IO狀態(tài)變化
6.3 參數(shù)設(shè)置
n I32 APS_set_axis_param( I32 Axis_ID, I32 AXS_Param_No, I32 AXS_Param )
-按指定的軸參數(shù)類型設(shè)定軸參數(shù)(僅用于I32參數(shù)類型)
n I32 APS_set_axis_param_f( I32 Axis_ID, I32 AXS_Param_No, F64 AXS_Param )
- 按指定的軸參數(shù)類型設(shè)定軸參數(shù)(僅用于F64參數(shù)類型)
注意:使用函數(shù)時,要注意使用和參數(shù)值類型對應(yīng)的函數(shù)
6.4 參數(shù)保存
n I32 APS_save_parameter_to_flash( I32 Board_ID )
- 保存參數(shù)到卡片F(xiàn)lash
n I32 APS_save_param_to_file( I32 Board_ID, const char *pXMLFile )
- 將參數(shù)保存到XML文件中
6.5 電機(jī)激磁
n I32 APS_set_servo_on( I32 Axis_ID, I32 Servo_on )
- 電機(jī)激磁/消磁
注意:SVON信號如果不為ON,則卡片無法發(fā)送運(yùn)動指令
6.6.1 回零參數(shù)設(shè)置
n I32 APS_set_axis_param( I32 Axis_ID, I32 AXS_Param_No, I32 AXS_Param )
-按指定的軸參數(shù)類型設(shè)定軸參數(shù)(僅用于I32參數(shù)類型)
n I32 APS_set_axis_param_f( I32 Axis_ID, I32 AXS_Param_No, F64 AXS_Param )
- 按指定的軸參數(shù)類型設(shè)定軸參數(shù)(僅用于F64參數(shù)類型)
注意:使用函數(shù)時,要注意使用和參數(shù)值類型對應(yīng)的函數(shù)
6.6.2 回零參數(shù)保存
n I32 APS_save_parameter_to_flash( I32 Board_ID )
- 保存參數(shù)到卡片F(xiàn)lash
n I32 APS_save_param_to_file( I32 Board_ID, const char *pXMLFile )
- 將參數(shù)保存到XML文件中
6.6.3 回零運(yùn)動
n I32 APS_home_move( I32 Axis_ID )
- 開始回零運(yùn)動
6.6.4 停止運(yùn)動
n I32 APS_stop_move(I32 Axis_ID)
- 減速停止
n I32 APS_emg_stop(I32 Axis_ID);
- 立刻停止
6.7.1 運(yùn)動狀態(tài)監(jiān)視
n I32 APS_motion_status( I32 Axis_ID )
-運(yùn)動狀態(tài)監(jiān)視
注意:
1、建議在正式運(yùn)動前開啟運(yùn)動狀態(tài)監(jiān)視,以便于在運(yùn)動之后能夠?qū)崟r監(jiān)視運(yùn)動狀態(tài)變化。
6.7.2 位置&速度監(jiān)視
n I32 APS_get_command( I32 Axis_ID, I32 *Command )
-指令位置監(jiān)視
n I32 APS_get_position( I32 Axis_ID, I32 *Position );
-反饋位置監(jiān)視
n I32 APS_get_error_position( I32 Axis_ID, I32 *Err_Pos )
-偏差位置監(jiān)視
n I32 APS_get_command_velocity(I32 Axis_ID, I32 *Velocity )
-指令速度監(jiān)視
n I32 APS_get_feedback_velocity(I32 Axis_ID, I32 *Velocity);
-反饋速度監(jiān)視
注意:
1、建議在正式運(yùn)動前開啟位置及速度監(jiān)視,以便于在運(yùn)動之后能夠?qū)崟r監(jiān)視位置及速度變化
6.7.3 位置&速度監(jiān)視
n I32 APS_get_command( I32 Axis_ID, I32 *Command )
-指令位置監(jiān)視(僅用于I32參數(shù)類型)
n I32 APS_get_position( I32 Axis_ID, I32 *Position )
-反饋位置監(jiān)視(僅用于I32參數(shù)類型)
n I32 APS_get_error_position( I32 Axis_ID, I32 *Err_Pos )
-偏差位置監(jiān)視(僅用于I32參數(shù)類型)
n I32 APS_get_command_velocity(I32 Axis_ID, I32 *Velocity )
-指令速度監(jiān)視(僅用于I32參數(shù)類型)
n I32 APS_get_feedback_velocity(I32 Axis_ID, I32 *Velocity)
-反饋速度監(jiān)視(僅用于I32參數(shù)類型)
注意:
1、建議在正式運(yùn)動前開啟位置及速度監(jiān)視,以便于在運(yùn)動之后能夠?qū)崟r監(jiān)視位置及速度變化
6.8 位置重置
n I32 APS_set_command(I32 Axis_ID, I32 Command)
-指令位置重置(僅用于I32參數(shù)類型)
n I32 APS_set_position(I32 Axis_ID, I32 Position)
-反饋位置重置(僅用于I32參數(shù)類型)
注意:
1、在回零完成后,可以立刻使用位置重置函數(shù)。之后,則請謹(jǐn)慎使用位置重置函數(shù)。它將改變設(shè)備的參考零點位置。
6.9.1 PTP運(yùn)動
n I32 APS_relative_move( I32 Axis_ID, I32 Distance, I32 Max_Speed )
-相對運(yùn)動
n I32 APS_absolute_move( I32 Axis_ID, I32 Position, I32 Max_Speed )
-絕對運(yùn)動
注意:
1、該2條函數(shù)可以實現(xiàn)在線變速/變位
6.9.2 JOG運(yùn)動
n I32 APS_jog_start( I32 Axis_ID, I32 STA_On );
-JOG運(yùn)動
6.9.3 插補(bǔ)運(yùn)動
n I32 APS_absolute_linear_move( I32 Dimension, I32 *Axis_ID_Array, I32 *Position_Array, I32 Max_Linear_Speed )
-絕對線性運(yùn)動
n I32 APS_relative_linear_move( I32 Dimension, I32 *Axis_ID_Array, I32 *Distance_Array, I32 Max_Linear_Speed )
-相對線性運(yùn)動
n I32 APS_absolute_arc_move( I32 Dimension, I32 *Axis_ID_Array, I32 *Center_Pos_Array, I32 Max_Arc_Speed, I32 Angle )
-絕對圓弧運(yùn)動
n I32 APS_relative_arc_move( I32 Dimension, I32 *Axis_ID_Array, I32 *Center_Offset_Array, I32 Max_Arc_Speed, I32 Angle )
-相對圓弧運(yùn)動
6.10 關(guān)閉卡片
n I32 APS_close()
-關(guān)閉卡片
以上就是關(guān)于pos機(jī)自動鎖螺絲機(jī),非標(biāo)自動化之運(yùn)動控制卡編程及應(yīng)用的知識,后面我們會繼續(xù)為大家整理關(guān)于pos機(jī)自動鎖螺絲機(jī)的知識,希望能夠幫助到大家!
