 控制器CS20-2S是基于串口控制的,對外提供一個 D 型的 USB 口,內(nèi)置 CH340 轉(zhuǎn)換芯片(可以實(shí)現(xiàn)USB轉(zhuǎn)串口的芯片),可直接與電腦 USB 口連接,可以用對應(yīng)軟件進(jìn)行參數(shù)設(shè)置來實(shí)現(xiàn)控制,可控制兩路步進(jìn)電機(jī)、8 路數(shù)字量輸出、8 路數(shù)字量輸入、1 路蜂鳴器。 都可以用串口指令進(jìn)行控制和檢測(本控制器****頻率 24000Hz)。 可以實(shí)現(xiàn)控制電機(jī)運(yùn)行指定距離、手動控制電機(jī)位移、尋找機(jī)械零點(diǎn)、控制輸出點(diǎn)等功能 VB參數(shù)設(shè)置軟件
控制器接線圖
控制電機(jī)運(yùn)行指定距離參數(shù)設(shè)置:格式如下:
Mode-運(yùn)動模式選擇,長度為 1 字節(jié),可設(shè)置參數(shù)如下: 0x10: 相對運(yùn)動,起點(diǎn)為當(dāng)前點(diǎn) 0x11: ****運(yùn)動,相對于程序的零點(diǎn) 0x12: 設(shè)定坐標(biāo),電機(jī)不運(yùn)動,坐標(biāo)設(shè)定為指定值 Speed-運(yùn)行速度,長度為 2 字節(jié),低位在前,高位在后 例:速度為:10000,則為 0x10,0x27 速度為:12345,則為 0x39,0x30 X_crd-X 軸坐標(biāo)值,產(chǎn)度為 4 字節(jié),低位在前,高位在后 Y_crd-Y 軸坐標(biāo)值,產(chǎn)度為 4 字節(jié),低位在前,高位在后 比如:如果讓電機(jī)以 10000 的速度運(yùn)行到****位置(12345,321),則可向串口發(fā)送如下指令序列:
****運(yùn)動0x11 第一個格子內(nèi) 0x10、0x27,組合為 2 字節(jié)速度為:0x2710,十進(jìn)制為:10000,運(yùn)行速度10000 第二個格子內(nèi)為 X 坐標(biāo),組合后為:0x00003039,十進(jìn)制為:12345 第三個格子內(nèi)為 Y 坐標(biāo),組合后為:0x00000141,十進(jìn)制為:321。 有效指令發(fā)出后,電機(jī)進(jìn)入運(yùn)行狀態(tài),此刻不再接收其他運(yùn)動指令,但可以發(fā)送查詢指令0x00(后面介紹)查詢電機(jī)當(dāng)前位置、運(yùn)行速度、輸入口狀態(tài)等。 手動控制電機(jī)位移參數(shù)設(shè)置格式如下:
Direction-電機(jī)運(yùn)行方向,長度為 1 字節(jié),可設(shè)置參數(shù)如下: 0x20:X 軸電機(jī)停止 0x21:X 軸電機(jī)正向 0x22:X 軸電機(jī)反向 0x30:Y 軸電機(jī)停止 0x31:Y 軸電機(jī)正向 0x32:Y 軸電機(jī)反向 Speed-電機(jī)運(yùn)行速度,長度為 2 字節(jié),低位在前,高位在后 尋找機(jī)械零點(diǎn)零點(diǎn)的過程是,快速朝零點(diǎn)方向運(yùn)行,碰到零點(diǎn)信號后,降速停止,然后反方向慢速運(yùn)行,直至脫離零點(diǎn)。 格式如下:
此指令相當(dāng)于連續(xù)兩條手動控制電機(jī)位移指令,不同的是指令控制碼。 Direction:電機(jī)回零方向,長度為 1 字節(jié),可設(shè)置參數(shù)如下: 0x41:X 軸正向?qū)ふ伊泓c(diǎn) 0x42:X 軸負(fù)向?qū)ふ伊泓c(diǎn) 0x51:Y 軸正向?qū)ふ伊泓c(diǎn) 0x52:Y 軸負(fù)向?qū)ふ伊泓c(diǎn) LowSpd:電機(jī)找到零點(diǎn)后的脫離速度,長度為 2 字節(jié),低位在前,高位在后 Cmd:回零操作,可設(shè)置參數(shù)如下: 如果是 X 軸回零操作,設(shè)為 0x40 如果是 Y 軸回零操作,設(shè)為 0x50 HiSpd:電機(jī)快速向零點(diǎn)運(yùn)行的速度,長度為 2 字節(jié),低位在前,高位在后 控制輸出點(diǎn)格式如下:
Outport-輸出點(diǎn)選擇,長度為 1 字節(jié),可設(shè)置參數(shù)如下:
特殊指令格式如下:
Cmd-特殊操作指令,長度為 1 字節(jié),可設(shè)置參數(shù)如下: 0x00:查詢 0x01:暫停 0x02:繼續(xù) 0x03:取消 例如:1)查詢指令(0x55,0xaa,0x5a,0xa5,0x00) 發(fā)送查詢指令(0x55,0xaa,0x5a,0xa5,0x00)后,控制會返回 16 字節(jié)的信息,:0x55,0xaa,X_crd,Y_crd,Speed,Inport,Outport,0x00,0x5a,用戶可以查詢電機(jī)當(dāng)前位置、運(yùn)行速度、輸入口狀態(tài)等。(可以查看前邊控制電機(jī)運(yùn)行指定距離參數(shù)設(shè)置) X_crd:X 電機(jī)當(dāng)前坐標(biāo)位置,一共 4 個字節(jié),低字節(jié)在前,高字節(jié)在后。 如果 X 坐標(biāo)值為 38632,則排列順序為:0xE8,0x96,0x00,0x00,4 字節(jié)排列后為:0x000096e8。 Y_crd:Y 電機(jī)當(dāng)前位置,與 X 定義一致。 Speed:當(dāng)前脈沖的頻率(速度較高的軸),2 字節(jié),低字節(jié)在前,高字節(jié)在后。 如果速度為 23456,則排列順序為:0xa0,0x5b,2 字節(jié)排列后為:0x5ba0。 Inport:當(dāng)前 8 個輸入的狀態(tài),長度為 1 字節(jié),8 個位分別對應(yīng)外部 8 個輸入,D7,D6,D5,D4,D3,D2,D1,D0 分別代表:輸入 8,輸入 7,輸入 6,輸入 5,輸入 4,輸入 3,輸入 2,輸入 1。 對應(yīng)位的值為 0 時,表示輸入有效,為 1 時,表示輸入無效。 (系統(tǒng)默認(rèn):輸入 1 為 X 正限位,輸入 2 為 X 負(fù)限位,輸入 3 為 Y 正限位,輸入 4 為 Y 負(fù)限位) Outport:當(dāng)前 8 個輸出口的狀態(tài),定位同輸入。對應(yīng)位為 1 是,表示輸出有效,對應(yīng)位為 0 時,表示輸出無效,此處與輸入相反。 例如:2)其他指令 電機(jī)在運(yùn)行中,在沒有走到終點(diǎn)位置的時候,可以人工干預(yù)停止電機(jī)運(yùn)行,發(fā)送:0x55,0xaa,0x5a,0xa5,0x01(暫停指令),控制收到指令后,降速停下,并進(jìn)入等待狀態(tài)。此狀態(tài)下,可以讓電機(jī)繼續(xù)運(yùn)行,并走到預(yù)設(shè)的終點(diǎn)位置,也可以取消剛才的定位指令。如果需要繼續(xù),請發(fā)送:0x55,0xaa,0x5a,0xa5,0x02(繼續(xù)指令);如果結(jié)束這個動作,請發(fā)送:0x55,0xaa,0x5a,0xa5,0x03(取消指令)。 
|