
ZMC408CE硬件介紹
ZMC408CE是正運(yùn)動(dòng)推出的一款多軸高性能EtherCAT總線運(yùn)動(dòng)控制器,具有EtherCAT、EtherNET、RS232、CAN和U盤等通訊接口,ZMC系列運(yùn)動(dòng)控制器可應(yīng)用于各種需要脫機(jī)或聯(lián)機(jī)運(yùn)行的場(chǎng)合。

ZMC408CE支持8軸運(yùn)動(dòng)控制,最多可擴(kuò)展至32軸,支持直線插補(bǔ)、任意圓弧插補(bǔ)、空間圓弧、螺旋插補(bǔ)、電子凸輪、電子齒輪、同步跟隨等功能。
ZMC408CE支持PLC、Basic、HMI組態(tài)三種編程方式。PC 上位機(jī) API編程支持C#、C++、LabVIEW、Matlab、Qt、Linux、VB.Net、Python等接口。

ZMC408CE支持8軸運(yùn)動(dòng)控制,可采用脈沖軸(帶編碼器反饋)或EtherCAT總線軸,通用IO包含24路輸入口和16路輸出口,部分IO為高速IO,模擬量AD/DA各兩路,EtherCAT最快125us的刷新周期。
ZMC408CE支持8個(gè)通道的硬件比較輸出、硬件定時(shí)器、運(yùn)動(dòng)中精準(zhǔn)輸出,還支持8通道PWM輸出,對(duì)應(yīng)的輸出口為OUT0-7,支持8個(gè)通道同時(shí)觸發(fā)硬件比較輸出。
ZMC408CE視頻介紹
更多關(guān)于ZMC408CE的詳情介紹,點(diǎn)擊“推薦|8通道PSO的高性能EtherCAT總線運(yùn)動(dòng)控制器”查看。
PCIE464M硬件介紹
PCIE464M是一款基于PCIe的PCI Express的EtherCAT總線運(yùn)動(dòng)控制卡,具有多項(xiàng)實(shí)時(shí)和高精度運(yùn)動(dòng)控制控制功能。

用戶可直接將PCIE464M嵌入標(biāo)準(zhǔn)PC機(jī)實(shí)現(xiàn)高性能的EtherCAT運(yùn)動(dòng)控制功能,實(shí)現(xiàn)高精多軸同步控制,EtherCAT控制周期最小可達(dá)100us!
PCIE464M內(nèi)置多路高速IO輸入輸出,可滿足用戶的多樣化高速IO應(yīng)用需求,如:高速色標(biāo)鎖存、高速PWM、多維位置比較輸出PSO、視覺(jué)飛拍、速度前瞻、編碼器位置檢測(cè)等應(yīng)用。

PCIE464M運(yùn)動(dòng)控制卡上自帶16進(jìn)16出,第三方圖像處理工控機(jī)或PC無(wú)需額外配置IO數(shù)據(jù)采集卡和PLC,即可實(shí)現(xiàn)IPC形態(tài)的機(jī)器視覺(jué)運(yùn)動(dòng)控制一體機(jī),簡(jiǎn)化硬件架構(gòu),節(jié)省成本,軟硬件一體化。
PCIE464M視頻介紹
更多關(guān)于PCIE464M的詳情介紹,點(diǎn)擊“PCIE464M-高速高精,超高速PCIe EthrtCAT實(shí)時(shí)運(yùn)動(dòng)控制卡”查看。
PT指令與PVT指令
1. PT運(yùn)動(dòng)介紹
PT(Position-Time)運(yùn)動(dòng):是一種單位時(shí)間內(nèi)的運(yùn)動(dòng)位置控制技術(shù),主要用于控制步進(jìn)電機(jī)和伺服電機(jī)等運(yùn)動(dòng)設(shè)備在設(shè)定時(shí)間內(nèi)實(shí)現(xiàn)精確的軸位置控制。位置跟時(shí)間參數(shù)一般是PC每個(gè)周期計(jì)算好對(duì)應(yīng)的坐標(biāo),然后傳給控制器。
PT算法:在用戶定義的“位置和時(shí)間”點(diǎn)之間,PT算法計(jì)算出一個(gè)合適的速度曲線。PT算法保證控制卡的軌跡計(jì)算符合每一個(gè)已知的點(diǎn)和時(shí)間。分段速度簡(jiǎn)單的由位置和時(shí)間的差分計(jì)算出來(lái)。
PT運(yùn)動(dòng)適用場(chǎng)景:適用于近距離的點(diǎn)位運(yùn)動(dòng)或低速度的運(yùn)動(dòng)。它是非常簡(jiǎn)單的算法,需要很少的計(jì)算量,因此計(jì)算速度很快。在低性能的運(yùn)動(dòng)系統(tǒng)中很受歡迎。但如果點(diǎn)之間間隔太大,那么運(yùn)動(dòng)將會(huì)很粗糙,因?yàn)槊恳欢蔚募铀俣葘?huì)顯得不連續(xù)。
PT運(yùn)動(dòng)為保證設(shè)定的單位時(shí)間內(nèi)達(dá)到規(guī)劃的目標(biāo)位置,控制器自動(dòng)生成相應(yīng)的加速度、速度曲線規(guī)劃。如果在極短時(shí)間內(nèi)運(yùn)動(dòng)大距離,脈沖頻率會(huì)過(guò)高,導(dǎo)致電機(jī)堵轉(zhuǎn)。建議分解成小段,重復(fù)發(fā)送,連續(xù)的多個(gè)周期PT運(yùn)動(dòng)時(shí), 速度會(huì)自動(dòng)均勻。
2.PVT運(yùn)動(dòng)介紹
PVT(Position-Velocity-Time)運(yùn)動(dòng):是一種基于位置、速度和時(shí)間的綜合控制方法,通過(guò)協(xié)調(diào)這三個(gè)方面的參數(shù),實(shí)現(xiàn)對(duì)運(yùn)動(dòng)系統(tǒng)的精準(zhǔn)控制。PVT在一段時(shí)間內(nèi)驅(qū)動(dòng)電機(jī)運(yùn)動(dòng)設(shè)置的距離,可以指定結(jié)束速度,小段內(nèi)速度會(huì)自動(dòng)根據(jù)前面的速度與結(jié)束速度來(lái)自動(dòng)規(guī)劃,盡可能連續(xù)。位置、速度跟時(shí)間參數(shù)一般是PC每個(gè)周期計(jì)算好對(duì)應(yīng)的坐標(biāo),然后傳給控制器。
PVT算法:在用戶定義的“位置/速度/時(shí)間”點(diǎn)之間,PVT算法計(jì)算出合適的Jerk參數(shù)(加加速度,非恒定加速度)。這個(gè)算法保證軌跡計(jì)算合符每個(gè)已知點(diǎn)的位置、速度和時(shí)間。
PVT模式算法適用場(chǎng)景:PVT算法對(duì)于平滑軌跡和軌跡跟蹤非常有效。位置軌跡點(diǎn)可以間隔很近,也可以間隔很大。比如說(shuō)對(duì)于復(fù)雜的路徑,點(diǎn)位需要間隔很近;對(duì)于簡(jiǎn)單的路徑,點(diǎn)位可以間隔很大。PVT可以手動(dòng)指定點(diǎn)位置,但是要確定好每個(gè)點(diǎn)的合適速度值。
3.正運(yùn)動(dòng)的PT指令與PVT指令
相關(guān)的指令說(shuō)明可以打開(kāi)RTSys軟件,點(diǎn)擊軟件右上角的【幫助文檔】,選擇RTBasic編程手冊(cè),在第七章的7.3節(jié)特殊運(yùn)動(dòng)指令章節(jié)進(jìn)行查看。

ZBasic快速驗(yàn)證自定義軌跡規(guī)劃指令MOVE_PTABS
1.MOVE_PTABS指令的介紹。

注意距離參數(shù)dis的單位不是脈沖數(shù),dis*units才表示具體的脈沖數(shù)。
時(shí)間參數(shù)ticks的單位是伺服周期,控制器的伺服周期可以通過(guò)RTSys軟件的在線命令輸入?*max進(jìn)行打印。
如下圖SERVO_PERIOD:1000 min:500 max:4000表示當(dāng)前控制器的伺服周期是1000us,伺服周期的可調(diào)范圍是500us到4000us。
控制器伺服周期可以通過(guò)在線命令發(fā)送SERVO_PERIOD=500把伺服周期設(shè)置成500us,控制器斷電重啟后生效。

2.如何通過(guò)move_ptabs指令來(lái)封裝接口來(lái)實(shí)現(xiàn)單軸Sin曲線的位置規(guī)劃。
(1)接口詳情
'主函數(shù)邏輯
'軸參數(shù)初始化
BASE(0,1,2)
DPOS=0,0,0
MPOS=0,0,0
UNITS=100,100,100
MAX_SPEED=10000000,10000000,10000000
'停止線程和軸運(yùn)動(dòng)
STOPTASK 1
RAPIDSTOP(2)
WAIT IDLE
'清除控制器報(bào)警
DATUM(0)
'開(kāi)始軌跡規(guī)劃
'單軸Sin曲線,振幅10,周期100個(gè)SERVO_PERIOD,初相角 0°
Runtask 1,MySingleAxisSin(0,10,Pi/50,0)
END
'/**********************************************************************
'函數(shù)功能:?jiǎn)屋Ssin函數(shù)的軌跡
'函數(shù)模型:y=Amp*sin(Rad*x+Ipa)
' 輸 入 :Amp(振幅)、Rad(角速度ω,弧度制)、Ipa(初相角φ,弧度制)
' 輸 入 :AxisNum(運(yùn)動(dòng)的軸)
' 輸 出 :
' 備 注 :周期=2*Pi/Rad*10(控制周期)
'**********************************************************************/
GLOBAL SUB MySingleAxisSin(AxisNum,Amp,Rad,Ipa)
LOCAL lvTime
lvTime=0
'選擇要運(yùn)動(dòng)的軸
BASE(AxisNum)
WHILE 1
'通過(guò)PT運(yùn)動(dòng)下發(fā)運(yùn)動(dòng)指令
MOVE_PTABS(10,Amp*SIN(Rad*lvTime+Ipa))
lvTime=lvTime+1
DELAY(1)
WEND
ENDSUB
(2)測(cè)試結(jié)果

3.如何通過(guò)move_ptabs指令來(lái)封裝接口實(shí)現(xiàn)多軸的Sin曲線的位置規(guī)劃。
(1)接口詳情
'主函數(shù)邏輯
'軸參數(shù)初始化
BASE(0,1,2)
DPOS=0,0,0
MPOS=0,0,0
UNITS=100,100,100
MAX_SPEED=10000000,10000000,10000000
'停止線程和軸運(yùn)動(dòng)
STOPTASK 1
RAPIDSTOP(2)
WAIT IDLE
'清除控制器報(bào)警
DATUM(0)
'開(kāi)始軌跡規(guī)劃
'多軸的Sin曲線規(guī)劃
Runtask 1,MyMultAxisSin(10,Pi/50,0,10,Pi/100,0,10,Pi/200,0)
END
'/**********************************************************************
'函數(shù)功能:0、1、2軸的3軸sin函數(shù)的軌跡
'函數(shù)模型:y1=A1mp*sin(Rad1*x+Ipa1)
' :y2=A2mp*sin(Rad2*x+Ipa2)
' :y3=A3mp*sin(Rad3*x+Ipa3)
' 輸 入 :Amp(振幅)、Rad(角速度ω,弧度制)、Ipa(初相角φ,弧度制)
' 輸 出 :
' 備 注 :周期=2*Pi/Rad*10(控制周期)
'**********************************************************************/
GLOBAL SUB MyMultAxisSin(Amp1,Rad1,Ipa1,Amp2,Rad2,Ipa2,Amp3,Rad3,Ipa3)
LOCAL lvTime
lvTime=0
'選擇要運(yùn)動(dòng)的軸
BASE(0,1,2)
WHILE 1
MOVE_PTABS(10,Amp1*SIN(Rad1*lvTime+Ipa1),Amp2*SIN(Rad2*lvTime+Ipa2),Amp3*SIN(Rad3*lvTime+Ipa3))\
lvTime=lvTime+1
DELAY(1)
WEND
ENDSUB
(2)測(cè)試結(jié)果

4.如何在move_ptabs指令后插入move_op指令來(lái)實(shí)現(xiàn)運(yùn)動(dòng)中對(duì)輸出口的操作。
(1)假設(shè)需要在每執(zhí)行Spasce個(gè)周期就需要操作一下輸出口0,接口詳情如下。
'主函數(shù)邏輯
'軸參數(shù)初始化
BASE(0,1,2)
DPOS=0,0,0
MPOS=0,0,0
UNITS=100,100,100
MAX_SPEED=10000000,10000000,10000000
'停止線程和軸運(yùn)動(dòng)
STOPTASK 1
RAPIDSTOP(2)
WAIT IDLE
'清除控制器報(bào)警
DATUM(0)
'開(kāi)始軌跡規(guī)劃
'單在Sin曲線軌跡規(guī)劃插入對(duì)輸出口的操作指令
MySingleAxisSinOP(0,10,Pi/50,0,0.25)
END
'/**********************************************************************
'函數(shù)功能:?jiǎn)屋Ssin函數(shù)的軌跡+MOVE_OP
'函數(shù)模型:y=Amp*sin(Rad*x+Ipa)
' 輸 入 :Amp(振幅)、Rad(角速度ω,弧度制)、Ipa(初相角φ,弧度制)
' 輸 入 :AxisNum(運(yùn)動(dòng)的軸),Space(間隔多少個(gè)周期操作一下輸出口)
' 輸 出 :
' 備 注 :周期=2*Pi/Rad*10(控制周期)
'**********************************************************************/
GLOBAL SUB MySingleAxisSinOP(AxisNum,Amp,Rad,Ipa,Space)
LOCAL lvTime,lvOpFlag
lvTime=0
lvOpFlag=0
MOVE_OP(0,OFF)
WHILE 1
MOVE_PTABS(10,Amp*SIN(Rad*lvTime+Ipa))
'檢測(cè)是否執(zhí)行到Space個(gè)周期,執(zhí)行到需要打開(kāi)/關(guān)閉輸出口
IF lvTime MOD(Space*2*Pi/Rad) = 0THEN
IF lvOpFlag=1 THEN
MOVE_OP(0,OFF)
lvOpFlag=0
ELSE
MOVE_OP(0,ON)
lvOpFlag=1
ENDIF
ENDIF
lvTime=lvTime+1
DELAY(1)
WEND
ENDSUB
(2)測(cè)試結(jié)果

5.如何通過(guò)硬件定時(shí)器對(duì)輸出口進(jìn)行操作。
(1)硬件定時(shí)器指令介紹
MOVE_HWTIMER(mode, cyclonetime, optime, reptimes, opstate, opnum )
①mode:0-停止硬件定時(shí)器,1-動(dòng)態(tài)修改參數(shù)(不修改啟動(dòng)設(shè)置),2-啟動(dòng)(啟動(dòng)后不可重復(fù)開(kāi)啟)
②cyclonetime:周期時(shí)間,us單位
③optime:有效時(shí)間,us單位
④reptimes:重復(fù)次數(shù),啟動(dòng)模式,reptimes =0時(shí),軟關(guān)閉HW_TIMER,原來(lái)的脈沖沒(méi)有完成的,會(huì)繼續(xù)輸出完成;-1時(shí)無(wú)限輸出,除非主動(dòng)關(guān)閉
⑤opstate:輸出缺省狀態(tài),輸出口變?yōu)榉谴藸顟B(tài)后開(kāi)始計(jì)時(shí)(輸出口初始狀態(tài)OFF。一般此參數(shù)設(shè)為OFF,將輸出口變?yōu)镺N狀態(tài)后開(kāi)始計(jì)時(shí))
⑥opnum:輸出口編號(hào),必須能硬件比較輸出的口。

(2)測(cè)試代碼詳情
'主函數(shù)邏輯
'軸參數(shù)初始化
BASE(0,1,2)
DPOS=0,0,0
MPOS=0,0,0
UNITS=100,100,100
MAX_SPEED=10000000,10000000,10000000
'停止線程和軸運(yùn)動(dòng)
STOPTASK 1
RAPIDSTOP(2)
WAIT IDLE
'清除控制器報(bào)警
DATUM(0)
'開(kāi)始軌跡規(guī)劃
'單在Sin曲線軌跡規(guī)劃插入對(duì)輸出口的操作指令
MySingleAxisSinOP(0,10,Pi/50,0,0.25)
END
'/******************************************************************************
'函數(shù)功能:?jiǎn)屋Ssin函數(shù)的軌跡+輸出口多次輸出
'函數(shù)模型:y=10*sin(Pi/50*x+0)
' 輸 入 :AxisNum(運(yùn)動(dòng)的軸)
' 輸 出 :
'具體需求:要求Sin函數(shù)每隔0.5個(gè)周期打開(kāi)一次輸出口,并且輸出口的以脈沖的形式輸出4個(gè)脈沖
'******************************************************************************/
GLOBAL SUB MySingSinOP_HwTime(AxisNum)
LOCAL lvTime,Space
lvTime=0
Space=0.5
BASE(AxisNum)
MOVE_OP(0,OFF)
MOVE_HWTIMER(0, 60000, 30000, 4, OFF, 0)
MOVE_HWTIMER(2, 60000, 30000, 4, OFF, 0)
WHILE 1
MOVE_PTABS(10,10*SIN(PI*lvTime/50+0))
'檢測(cè)是否執(zhí)行到Space個(gè)周期,執(zhí)行到需要打開(kāi)/關(guān)閉輸出口,mod是求余指令
IF lvTime MOD (50) = 0THEN
MOVE_OP(0,ON)
ENDIF
lvTime=lvTime+1
DELAY(1)
WEND
ENDSUB
(3)測(cè)試結(jié)果

Qt進(jìn)行自定義軌跡規(guī)劃的算法驗(yàn)證
1.新建QT項(xiàng)目,并添加正運(yùn)動(dòng)的動(dòng)態(tài)庫(kù)到項(xiàng)目里面。
(1)新建Qt項(xiàng)目。

圖2-1 新建Qt項(xiàng)目

圖2-2 選擇Qt編譯套件(kits)

圖2-3 選擇基類
(2)將函數(shù)庫(kù)相關(guān)的文件復(fù)制到新建的項(xiàng)目中。

圖2-4 庫(kù)文件復(fù)制
(3)向新建的項(xiàng)目里面添加函數(shù)庫(kù)的靜態(tài)庫(kù)。(zmotion.lib)

圖2-5 添加函數(shù)庫(kù)1

圖2-6 添加函數(shù)庫(kù)2

圖2-7 添加函數(shù)庫(kù)3
(4)添加函數(shù)庫(kù)相關(guān)的頭文件到項(xiàng)目中。

圖2-8 添加頭文件1
(5)聲明相關(guān)頭文件,并定義連接句柄。

2. 正運(yùn)動(dòng)動(dòng)態(tài)庫(kù)相關(guān)接口說(shuō)明。
(1)運(yùn)動(dòng)PC函數(shù)庫(kù)編程手冊(cè)所在路徑。

(2)上位機(jī)如何連接控制器。

(3)上位機(jī)如何下發(fā)自定義的軌跡規(guī)劃參數(shù)。

3. Qt自定義軌跡規(guī)劃案例講解。
(1)案例Ui講解。

該例程除了可以下發(fā)Sin曲線的軌跡外,還可以按照設(shè)定的角度間隔操作輸出口輸出,打開(kāi)輸出口后硬件定時(shí)器將生效,會(huì)按照設(shè)定的周期去重復(fù)操作輸出口,重復(fù)操作輸出口的次數(shù)及界面上的脈沖持續(xù)個(gè)數(shù)。
(2)案例代碼講解。
①連接控制器。
//連接控制器
void MainWindow::on_LinkButton_clicked()
{
int err=0;
if(g_handle == NULL)
{
QString ControllerIp = ui->IPcomboBox->currentText();
QByteArray IpStr = ControllerIp.toLocal8Bit();
err = ZAux_OpenEth(IpStr.data(),&g_handle);
if(err!=0)
{
QMessageBox::about(this, "提示","連接失敗請(qǐng)確認(rèn)IP正確!");
}
}
else
{
QMessageBox::about(this, "提示", "句柄非空請(qǐng)先斷開(kāi)鏈接!");
}
}
②啟動(dòng)自定義軌跡規(guī)劃算法測(cè)試。
//點(diǎn)擊啟動(dòng)按鈕,如果條件滿足講會(huì)講標(biāo)志位RunFlag設(shè)置為從而觸發(fā)定時(shí)器下發(fā)自定義的軌跡
void MainWindow::on_StartRun_clicked()
{
if(g_handle!=0)
{
if(RunFlag==0)
{
//初始化軸參數(shù)
//例程為方便測(cè)試,直接把規(guī)劃位置DPOS清空
ZAux_Direct_SetDpos(g_handle,0,0);
//例程為方便測(cè)試,直接把編碼器位置MPOS清空
ZAux_Direct_SetMpos(g_handle,0,0);
ZAux_Direct_SetUnits(g_handle,0,1000);
//關(guān)閉硬件定時(shí)器
ZAux_Direct_HwTimer(g_handle,0,10000,5000,1,0,0);
//啟動(dòng)硬件定時(shí)器功能,脈沖周期是50ms,高電平持續(xù)時(shí)間是25ms
ZAux_Direct_HwTimer(g_handle,2,50000,25000,ui->PluseNum->text().toInt(),0,0);
//啟動(dòng)自定義軌跡規(guī)劃算法測(cè)試
CurAanle=0;
RunFlag=1;
}
else
{
QMessageBox::about(this, "提示", "運(yùn)行中請(qǐng)先停止");
}
}
}
//定時(shí)器的超時(shí)服務(wù)子函數(shù)
void MainWindow::MyTimeOut()
{
if(g_handle!=NULL)
{
//如果啟動(dòng)條件滿足則開(kāi)始下發(fā)運(yùn)動(dòng)指令
if(RunFlag==1)
{
int AxisList[1]={0}; //軸列表
uint32 TicksList[1]={10}; //時(shí)間列表
float PosList[1]={0}; //位置列表
float OpCycTime=0; //操作輸出口的周期時(shí)間
int RemainBuff=0; //剩余緩沖器
int A = ui->ParaAmp->text().toInt(); //更新Sin曲線的振幅
double Rad = qDegreesToRadians(ui->ParaRad->text().toDouble());//更新Sin曲線的角速度
double Ipa = qDegreesToRadians(ui->ParaIpa->text().toDouble());//更新Sin曲線的初相角
OpCycTime = (2*M_PI/Rad*(ui->Angle->text().toInt()/360.0));
//獲取剩余軸緩沖器數(shù)目
ZAux_Direct_GetRemain_Buffer(g_handle,0,&RemainBuff);
//如果剩余緩沖器夠下發(fā)新的運(yùn)動(dòng)指令
if(RemainBuff>10)
{
for(int i=0;i<10;i++)
{
// 計(jì)算正弦值
PosList[0] = A*qSin(Rad*CurAanle+Ipa);
//下發(fā)正弦曲線
ZAux_Direct_MultiMovePtAbs(g_handle,1,1,AxisList,TicksList,PosList);
//如果到達(dá)打開(kāi)輸出口的角度,則下發(fā)打開(kāi)輸出口的指令
if(((int)(CurAanle/OpCycTime))*OpCycTime==CurAanle)
{
ZAux_Direct_MoveOp(g_handle,0,0,1);
}
CurAanle=CurAanle+1;
}
}
}
}
}
(3)通過(guò)RTSys的示波器功能接口自定義軌跡的運(yùn)動(dòng)效果。


完整代碼獲取地址
▼

本次,正運(yùn)動(dòng)技術(shù)EtherCAT運(yùn)動(dòng)控制器PT/PVT實(shí)現(xiàn)用戶自定義軌跡規(guī)劃,就分享到這里。
更多精彩內(nèi)容請(qǐng)關(guān)注“ 正運(yùn)動(dòng)小助手 ”公眾號(hào),需要相關(guān)開(kāi)發(fā)環(huán)境與例程代碼,請(qǐng)咨詢正運(yùn)動(dòng)技術(shù)銷售工程師。
本文由正運(yùn)動(dòng)技術(shù)原創(chuàng),歡迎大家轉(zhuǎn)載,共同學(xué)習(xí),一起提高中國(guó)智能制造水平。文章版權(quán)歸正運(yùn)動(dòng)技術(shù)所有,如有轉(zhuǎn)載請(qǐng)注明文章來(lái)源。

正運(yùn)動(dòng)技術(shù)專注于運(yùn)動(dòng)控制技術(shù)研究和通用運(yùn)動(dòng)控制軟硬件產(chǎn)品的研發(fā),是國(guó)家級(jí)高新技術(shù)企業(yè)。正運(yùn)動(dòng)技術(shù)匯集了來(lái)自華為、中興等公司的優(yōu)秀人才,在堅(jiān)持自主創(chuàng)新的同時(shí),積極聯(lián)合各大高校協(xié)同運(yùn)動(dòng)控制基礎(chǔ)技術(shù)的研究,是國(guó)內(nèi)工控領(lǐng)域發(fā)展最快的企業(yè)之一,也是國(guó)內(nèi)少有、完整掌握運(yùn)動(dòng)控制核心技術(shù)和實(shí)時(shí)工控軟件平臺(tái)技術(shù)的企業(yè)。主要業(yè)務(wù)有:運(yùn)動(dòng)控制卡_運(yùn)動(dòng)控制器_EtherCAT運(yùn)動(dòng)控制卡_EtherCAT控制器_運(yùn)動(dòng)控制系統(tǒng)_視覺(jué)控制器__運(yùn)動(dòng)控制PLC_運(yùn)動(dòng)控制_機(jī)器人控制器_視覺(jué)定位_XPCIe/XPCI系列運(yùn)動(dòng)控制卡等等 。
|