女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

EtherCAT運動控制卡應(yīng)用開發(fā)教程之Java

正運動技術(shù) ? 來源:正運動技術(shù) ? 作者:正運動技術(shù) ? 2025-06-13 14:29 ? 次閱讀

ZMC408CE 高性能總線型運動控制器

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

wKgZO2hLxVmADa5cAAHzCyibW3Q890.png

ZMC408CE支持PLC、Basic、HMI組態(tài)三種編程方式。PC上位機(jī)API編程支持C#C++LabVIEWMatlab、Qt、Linux、VB.Net、Python等接口。

wKgZPGhLxVmAfMLuAAD6H1vc1rg748.png

ZMC408CE硬件功能特性:

1.支持8軸運動控制(脈沖+EtherCAT總線),EtherCAT同步周期可快至125us;

2.24路通用輸入、16路通用輸出,模擬AD/DA各兩路;

3.8路10MHz高速差分脈沖輸出,總線軸、脈沖軸可混合插補(bǔ);

4.高性能處理器,提升運算速度、響應(yīng)時間和掃描周期等;

5.一維/二維/三維、多通道視覺飛拍,高速高精;

6.位置同步輸出PSO,連續(xù)軌跡加工中對精密點膠膠量控制和激光能量控制等;

7.多軸同步控制,多坐標(biāo)系獨立控制等;

8.直線插補(bǔ)、任意空間圓弧插補(bǔ)、螺旋插補(bǔ)、樣條插補(bǔ)等;

9.應(yīng)用靈活,可PC上位機(jī)開發(fā),也可脫機(jī)獨立運行;

ZMC408CE視頻介紹,點擊→“高性能EtherCAT總線運動控制器,帶你玩轉(zhuǎn)“8通道獨立PSO”應(yīng)用場景”查看。

更多關(guān)于ZMC408CE的詳情介紹,點擊“推薦|8通道PSO的高性能EtherCAT總線運動控制器”查看。

PCIE464M PCIe EtherCAT總線運動控制卡

PCIE464M是一款基于PCIe的PCI Express的EtherCAT總線運動控制卡,具有多項實時和高精度運動控制控制功能。

wKgZO2hLxVmAAvo2AAP3FWF5h1E222.png

PCIE464M運動控制卡上自帶16進(jìn)16出,第三方圖像處理工控機(jī)或PC無需額外配置IO數(shù)據(jù)采集卡和PLC,即可實現(xiàn)IPC形態(tài)的機(jī)器視覺運動控制一體機(jī),簡化硬件架構(gòu),節(jié)省成本,軟硬件一體化。

wKgZPGhLxVmAC6NrAAMN1vlErZo639.png

PCIE464M硬件功能特性:

1.可選6-64軸運動控制,支持EtherCAT總線/脈沖/步進(jìn)伺服驅(qū)動器

2.聯(lián)動軸數(shù)最高可達(dá)16軸,運動周期最小為100μs;

3.標(biāo)配16進(jìn)16出,其中4路高速鎖存輸入、4路高速PWM和12路高速硬件比較輸出PSO;

4.支持PWM輸出、1D/2D/3D PSO硬件位置比較輸出、視覺飛拍、連續(xù)軌跡插補(bǔ)等;

5.支持30+機(jī)械手模型正逆解模型算法,比如SCARA、Delta、UVW、4軸/5軸 RTCP...;

6.支持掉電存儲和掉電中斷,多重加密,提供程序更安全機(jī)制;

7.8路單端脈沖軸、4路單端編碼器軸;

8.具有一維、二維螺距補(bǔ)償控制,實現(xiàn)更高的加工精度;

PCIE464M視頻介紹,點擊→“超高速PCle EtherCAT控制卡PCIE464M,即刻提升高速高精智能裝備生產(chǎn)力!”查看。

更多關(guān)于PCIE464M的詳情介紹,點擊“PCIE464M-高速高精,超高速PCIe EthrtCAT實時運動控制卡”查看。

ECI2A18B 高性價比10軸運動控制卡

ECI2A18B是正運動推出的一款高性價比10軸脈沖型、模塊化的網(wǎng)絡(luò)型運動控制卡,采用優(yōu)化的網(wǎng)絡(luò)通訊協(xié)議可以實現(xiàn)實時的運動控制,同時支持多種通信協(xié)議,方便與其他工業(yè)控制設(shè)備連接和集成。安裝配置相對便捷,適合于模塊化和靈活性要求較高的控制系統(tǒng)

wKgZO2hLxVqAOVFfAAHdTrsR7V0779.png

ECI2A18B控制卡最大可擴(kuò)展至12脈沖軸,支持8路高速輸入和4路高速輸出,集成豐富的運動控制功能,包含多軸點位運動、電子凸輪,直線插補(bǔ),圓弧插補(bǔ),連續(xù)插補(bǔ)運動等,滿足多樣化的工業(yè)應(yīng)用需求。

wKgZPGhLxVqATo71AAIYEaphP_0789.png

ECI2A18B硬件功能特性:

1.支持6路差分脈沖軸+4路單端脈沖軸運動控制;

2.支持1路專用的手輪輸入接口;

3.差分脈沖軸最大輸出脈沖頻率10MHz;

4.標(biāo)配24+12進(jìn)16+6出,其中支持4路高速鎖存,4路高速PWM,2路高速硬件比較輸出PSO(可選支持HW2功能);

5.可支持RTSys+其他高級上位機(jī)編程語言的混合編程支持;

6.支持RTBasic多任務(wù)編程;

ECI2A18B視頻介紹,點擊→“【加量不加價】高性價比十軸脈沖運動控制卡ECI2A18B 讓您的設(shè)備在自動化行業(yè)內(nèi)卷中脫穎而出!”查看。

更多關(guān)于ECI2A18B的詳情介紹,點擊“【加量不加價】正運動網(wǎng)絡(luò)型運動控制卡ECI2618B/ECI2A18B”查看。

本文案例java開發(fā)環(huán)境:

操作系統(tǒng)環(huán)境:Win11_64位

Java版本:Oracle OpenJDK 22.0.2

IntelliJ IDEA版本:IntelliJ IDEA 2024.1.2



Java開發(fā)流程

1 新建項目

打開IntelliJ IDEA 2024.1.2,新建項目,生成器選擇Spring Boot,語言選java,類型選擇Maven,選擇JDK版本(此處選擇JDK22.0.2),選擇java版本(此處是17)。

wKgZO2hLxVqAborJAAHHCPNU9RQ478.png

wKgZPGhLxVqAAnSRAAIrNK7rC68308.png

2 配置構(gòu)建

配置構(gòu)建,添加main下面的application,運行一遍程序,沒有問題就進(jìn)行下一步。

wKgZO2hLxVuALtRXAAGButI6wBc200.png

wKgZPGhLxVuAE-lIAAFnafr6pCM407.png

3 創(chuàng)建接口

(1)按照標(biāo)準(zhǔn)開發(fā),在當(dāng)前軟件包路徑下創(chuàng)建接口ZmotionDao。

wKgZO2hLxVyAEb3iAAGxWqpEeho221.png

wKgZPGhLxVyAZepIAAFoIf95XXA895.png

(2)ZmotionDao接口繼承自StdCallLibrary,并添加相應(yīng)的Maven依賴項。

wKgZO2hLxV2AUP_OAAB-2YlWogk456.png

wKgZPGhLxV2AQ_nGAAD6mQsMpBk868.png

4 導(dǎo)入DLL庫

添加正運動DLL庫函數(shù)文件至resource路徑下。

wKgZO2hLxV6AQv5dAAGAomdkAsQ512.png

5 接口實例

通過Native.load方法加載“zauxdll.dll”的DLL,并創(chuàng)建一個ZMotionDao接口的實例INSTANCE,并聲明需要調(diào)用的PC函數(shù),PC函數(shù)可查詢ZMotion PC函數(shù)庫編程手冊。

wKgZPGhLxV6AQoxmAAGYi56BR9U362.png

6 數(shù)據(jù)類型

函數(shù)聲明中JNA對應(yīng)C語言中的數(shù)據(jù)類型需要修改,PC函數(shù)原型在ZMotion PC函數(shù)庫編程手冊查詢。比如打開網(wǎng)口連接函數(shù)ZAux_OpenEth(char * ipaddr,ZMC_HANDLE*phandle)中的char *用String替換,ZMC_HANDLE*對應(yīng)void**用PointerByReference替換。

wKgZO2hLxV6AILLnAAEW_QhBbXM061.png

wKgZPGhLxV-AAjkAAAKryLwaEIs903.png


簡單應(yīng)用

1 句柄初始化

PC函數(shù)均需傳入?yún)?shù)句柄handle,而ZMC_HANDLE實際封裝是void*,則傳入的參數(shù)類型是void**,根據(jù)上面的數(shù)據(jù)類型轉(zhuǎn)化表,void**需要用PointerByReference()創(chuàng)建一個PointerByReference對象intptr,即句柄初始化完成,把intptr傳入函數(shù)即可。

wKgZPGhLxV-ALexyAAHxIu1tiJk482.png

2 網(wǎng)口連接

打開網(wǎng)口連接,函數(shù)參數(shù)填入控制器的IP地址(此處控制器IP地址為192.168.0.11),注意電腦IP的網(wǎng)段和控制器的網(wǎng)段一致(即電腦IP設(shè)置為192.168.0.XX),查看打印結(jié)果返回值X1,為0則控制器連接成功。

wKgZO2hLxV-AXsC6AAHwCQ4zo50553.png

3 設(shè)置軸參數(shù)

wKgZPGhLxWCAWjmgAARIeaj10kU263.png

此處函數(shù)第一個參數(shù)的數(shù)據(jù)類型ZMC_HANDLE封裝是void*,前面已初始化的二級指針對象(此處為intptr)的數(shù)據(jù)類型是void**,需要調(diào)用方法intptr.getValue()來獲取一級指針才能傳入函數(shù),否則參數(shù)無法設(shè)置成功,查看打印結(jié)果X檢驗控制器參數(shù)是否設(shè)置成功。

wKgZO2hLxWCAX-RCAAIfmTGVWT0132.png

4 打印結(jié)果

查看打印結(jié)果X檢驗控制器參數(shù)是否設(shè)置成功,返回的結(jié)果為0即說明設(shè)置成功。

wKgZPGhLxWCANjahAAIzahBsIB4219.png

5 簡單軸運動

軸0往正方向持續(xù)運動。

wKgZO2hLxWGADnohAAIKnFOiGps257.png

6 指針類型的參數(shù)處理

注意獲取位置函數(shù)的第三個參數(shù)是一級指針類型,此處需用數(shù)組去接收函數(shù)返回的數(shù)據(jù)。

此時數(shù)組第一個元素dpos[0]即對應(yīng)軸0的位置,程序上死循環(huán)不斷獲取軸0位置,直至DPOS為100停止運動并關(guān)閉控制器的連接。

wKgZPGhLxWGAYHIMAAGlIrENr7Q434.png

wKgZO2hLxWKAd8iaAAIKnFOiGps905.png


五角星軌跡代碼如下:

(1)變量定義。

int[] piAxislist = {0,1}; //運動軸列表
inta =30;      //五角星的邊長
int[] status_x = {0}; //x軸的運動狀態(tài)
int[] status_y = {0}; //y軸的運動狀態(tài)
float[][] pfDisancelists =newfloat[11][2]; // 初始化運動距離列表
int[] GetValue = {0};   //當(dāng)前剩余緩沖數(shù)

(2)用二維數(shù)組來存放五角星軌跡的位置。

float[][] pfDisancelists = new float[11][2];  // 初始化運動距離列表
   pfDisancelists[0] = new float[]{0, (float) (a * Math.cos(0.1* Math.PI))};
   pfDisancelists[1] = new float[]{(float) (a * Math.sin(0.1* Math.PI)),0};
   pfDisancelists[2] = new float[]{(float) (a + a * Math.sin(0.1* Math.PI)),0};
   pfDisancelists[3] = new float[]{(float) (a * Math.sin(0.1* Math.PI) + a * Math.sin(0.2* Math.PI) * Math.tan(0.1* Math.PI)), (float) (-a * Math.sin(0.2* Math.PI))};
   pfDisancelists[4] = new float[]{(float) (a * Math.cos(0.2* Math.PI)), (float) (-(a + a * Math.sin(0.1* Math.PI)) * Math.tan(0.2* Math.PI) - a * Math.sin(0.2* Math.PI))};
   pfDisancelists[5] = new float[]{0, (float) (-(a + a * Math.sin(0.1* Math.PI)) * Math.tan(0.2* Math.PI))};
   pfDisancelists[6] = new float[]{(float) (-a * Math.cos(0.2* Math.PI)), (float) (-(a + a * Math.sin(0.1* Math.PI)) * Math.tan(0.2* Math.PI) - a * Math.sin(0.2* Math.PI))};
   pfDisancelists[7] = new float[]{(float) (-a * Math.sin(0.1* Math.PI) - a * Math.sin(0.2* Math.PI) * Math.tan(0.1* Math.PI)), (float) (-a * Math.sin(0.2* Math.PI))};
   pfDisancelists[8] = new float[]{(float) (-a - a * Math.sin(0.1* Math.PI)),0};   pfDisancelists[9] = new float[]{(float) (-a * Math.sin(0.1* Math.PI)),0};
   pfDisancelists[10] = new float[]{0, (float) (a * Math.cos(0.1* Math.PI))};

(3)通過函數(shù)ZAux_Direct_MoveAbs根據(jù)五角星軌跡點位運動。

// 循環(huán)調(diào)用運動函數(shù)
for(float[] pfDisancelist : pfDisancelists) {
  ZMotionDao.INSTANCE.ZAux_Direct_GetRemain_Buffer( intptr.getValue(),0, GetValue);//獲取軸 0 剩余緩沖數(shù)
  System.out.printf("當(dāng)前剩余緩沖數(shù)為%dn",GetValue[0]);
 if(GetValue[0]>0)
  {
    ZMotionDao.INSTANCE.ZAux_Direct_MoveAbs(intptr.getValue(),2, piAxislist, pfDisancelist);
  }
}

(4)通過函數(shù)ZAux_Direct_GetIfIdle得到的status_x[0]和status_y[0]判斷運動是否結(jié)束。

// 判斷運動是否結(jié)束
do{
 ZMotionDao.INSTANCE.ZAux_Direct_GetIfIdle(intptr.getValue(),0, status_x);
 ZMotionDao.INSTANCE.ZAux_Direct_GetIfIdle(intptr.getValue(),0, status_y);
}while(status_x[0] != -1|| status_y[0] != -1);


RTSys示波器監(jiān)控軌跡

RTSys是正運動推出的集成運動控制+機(jī)器視覺功能的開發(fā)軟件,先用RTSys軟件連接控制器,控制器默認(rèn)IP是192.168.0.11,軸參數(shù)窗口監(jiān)控參數(shù)設(shè)置是否成功,打開示波器,通過示波器觀察軌跡是否正確。

wKgZPGhLxWKAW_dtAAHOUt3d6U0961.png

wKgZO2hLxWOAAsegAAA4etZykE0723.png

wKgZPGhLxWOATnE0AAIai8U3IAg583.png

wKgZO2hLxWSANM12AAGI9SQfdp4612.png

wKgZPGhLxWSASj58AAFwh-W6s2A127.png


教學(xué)視頻可點擊→“EtherCAT運動控制卡應(yīng)用開發(fā)教程之Java_嗶哩嗶哩_bilibili”查看。


完整代碼獲取地址

wKgZO2hLxWSAVH9HAACZFz9P6Ic694.png


本次,正運動技術(shù)EtherCAT運動控制卡應(yīng)用開發(fā)教程之Java,就分享到這里。

更多精彩內(nèi)容請關(guān)注“正運動小助手”公眾號,需要相關(guān)開發(fā)環(huán)境與例程代碼,請咨詢正運動技術(shù)銷售工程師:400-089-8936。

本文由正運動技術(shù)原創(chuàng),歡迎大家轉(zhuǎn)載,共同學(xué)習(xí),一起提高中國智能制造水平。文章版權(quán)歸正運動技術(shù)所有,如有轉(zhuǎn)載請注明文章來源。

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • JAVA
    +關(guān)注

    關(guān)注

    20

    文章

    2986

    瀏覽量

    107069
  • 運動控制
    +關(guān)注

    關(guān)注

    4

    文章

    641

    瀏覽量

    33405
  • ethercat
    +關(guān)注

    關(guān)注

    19

    文章

    1032

    瀏覽量

    39677
收藏 人收藏

    評論

    相關(guān)推薦
    熱點推薦

    控制系統(tǒng)調(diào)優(yōu)必備知識:“運動控制卡 控制周期怎么算”你真的懂了嗎?

    在工業(yè)自動化領(lǐng)域,運動控制卡控制周期這個參數(shù)常常被忽視,但它卻是影響整個系統(tǒng)穩(wěn)定性、精度甚至產(chǎn)能的關(guān)鍵因素。你是不是也遇到過這些問題:電機(jī)總是抖動?軌跡跟蹤老是偏?想優(yōu)化系統(tǒng)卻無從下手?大概率是你的
    的頭像 發(fā)表于 05-27 10:59 ?309次閱讀
    <b class='flag-5'>控制</b>系統(tǒng)調(diào)優(yōu)必備知識:“<b class='flag-5'>運動</b><b class='flag-5'>控制卡</b> <b class='flag-5'>控制</b>周期怎么算”你真的懂了嗎?

    運動控制卡網(wǎng)絡(luò)通訊的心跳檢測之C#上位機(jī)編程

    使用C#上位機(jī)編程實現(xiàn)運動控制卡網(wǎng)絡(luò)通訊的心跳檢測功能
    的頭像 發(fā)表于 12-24 10:54 ?900次閱讀
    <b class='flag-5'>運動</b><b class='flag-5'>控制卡</b>網(wǎng)絡(luò)通訊的心跳檢測之C#上位機(jī)編程

    運動控制卡周期上報實時數(shù)據(jù)IO狀態(tài)之C++篇

    使用C++進(jìn)行運動控制卡的周期上報功能實現(xiàn)
    的頭像 發(fā)表于 12-17 13:59 ?730次閱讀
    <b class='flag-5'>運動</b><b class='flag-5'>控制卡</b>周期上報實時數(shù)據(jù)IO狀態(tài)之C++篇

    TMDSCNCD2800137控制卡信息指南

    電子發(fā)燒友網(wǎng)站提供《TMDSCNCD2800137控制卡信息指南.pdf》資料免費下載
    發(fā)表于 11-18 15:31 ?0次下載
    TMDSCNCD2800137<b class='flag-5'>控制卡</b>信息指南

    AM263x控制卡硬件用戶指南

    電子發(fā)燒友網(wǎng)站提供《AM263x控制卡硬件用戶指南.pdf》資料免費下載
    發(fā)表于 11-07 09:47 ?0次下載
    AM263x<b class='flag-5'>控制卡</b>硬件用戶指南

    AM263Px控制卡評估模塊

    電子發(fā)燒友網(wǎng)站提供《AM263Px控制卡評估模塊.pdf》資料免費下載
    發(fā)表于 10-29 10:00 ?0次下載
    AM263Px<b class='flag-5'>控制卡</b>評估模塊

    PCIe實時運動控制卡的雙盤視覺篩選機(jī)上位機(jī)開發(fā)應(yīng)用

    PCIe實時運動控制卡的雙盤視覺篩選機(jī)上位機(jī)開發(fā)應(yīng)用
    的頭像 發(fā)表于 10-10 10:15 ?694次閱讀
    PCIe實時<b class='flag-5'>運動</b><b class='flag-5'>控制卡</b>的雙盤視覺篩選機(jī)上位機(jī)<b class='flag-5'>開發(fā)</b>應(yīng)用

    AM263x控制卡快速入門指南

    電子發(fā)燒友網(wǎng)站提供《AM263x控制卡快速入門指南.pdf》資料免費下載
    發(fā)表于 08-27 10:35 ?0次下載
    AM263x<b class='flag-5'>控制卡</b>快速入門指南

    AM263Px控制卡快速入門指南

    電子發(fā)燒友網(wǎng)站提供《AM263Px控制卡快速入門指南.pdf》資料免費下載
    發(fā)表于 08-26 09:24 ?0次下載
    AM263Px<b class='flag-5'>控制卡</b>快速入門指南

    EtherCAT運動控制器上位機(jī)開發(fā)之Python+Qt(三):PDO配置與SDO讀寫# 運動控制器# 控制卡

    運動控制
    正運動技術(shù)
    發(fā)布于 :2024年08月22日 09:11:13

    PCIe EtherCAT實時運動控制卡PCIE464的IO與編碼器讀寫應(yīng)用# 正運動技術(shù)# 運動控制卡

    編碼器運動控制卡
    正運動技術(shù)
    發(fā)布于 :2024年07月23日 09:37:31

    PCIe EtherCAT實時運動控制卡PCIE464的IO與編碼器讀寫應(yīng)用

    C#進(jìn)行PCIe EtherCAT運動控制卡的項目開發(fā)和快速讀取多個IO和軸編碼器位置的例程。
    的頭像 發(fā)表于 07-17 14:47 ?1333次閱讀
    PCIe <b class='flag-5'>EtherCAT</b>實時<b class='flag-5'>運動</b><b class='flag-5'>控制卡</b>PCIE464的IO與編碼器讀寫應(yīng)用