在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

EtherCAT運動控制器在ROS上的應用(下)

正運動技術 ? 來源:正運動技術 ? 作者:正運動技術 ? 2024-03-13 14:54 ? 次閱讀

本篇文章我們主要介紹正運動技術動態鏈接庫環境配置以及EtherCAT運動控制器ROS下的單軸運動。

在正式學習之前,我們先了解一下正運動技術的EtherCAT運動控制器ZMC432和ZMC408CE。這兩款產品分別是32軸,8軸EtherCAT運動控制器。

ZMC432功能簡介

wKgZomXn4fKAVYIBAAJR4whVX6Y975.png

ZMC432是正運動推出的一款多軸高性能EtherCAT總線運動控制器,具有EtherCAT、EtherNET、RS232、CAN和U盤等通訊接口,ZMC系列運動控制器可應用于各種需要脫機或聯機運行的場合。

wKgZomXn4hSAMd83AAEyz1gy7rY995.png

ZMC432最多可支持32軸運動控制,支持直線插補、任意圓弧插補、空間圓弧、螺旋插補、電子凸輪、電子齒輪、同步跟隨等功能。

ZMC432支持32軸脈沖輸入與編碼器反饋,通用IO包含24路輸入口和12個輸出口;2路AD,2路DA;其中特定輸出口支持高速PWM控制。

ZMC432通過EtherCAT和CAN總線進行硬件資源擴展,可擴展至4096路輸入和4096路輸出。

ZMC408CE功能簡介

wKgZomXn4imACupLAAJFIra5-ZM715.png

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

wKgZomXn4i-ADKjqAAFcbFclaK0179.png

ZMC408CE支持8軸運動控制,最多可擴展至32軸,支持直線插補、任意圓弧插補、空間圓弧、螺旋插補、電子凸輪、電子齒輪、同步跟隨等功能。

ZMC408CE支持8軸運動控制,可采用脈沖軸(帶編碼器反饋)或EtherCAT總線軸,通用IO包含24路輸入口和16路輸出口,部分IO為高速IO,模擬量AD/DA各兩路,EtherCAT最快125us的刷新周期。

ZMC408CE支持8個通道的硬件比較輸出、硬件定時器、運動中精準輸出,還支持8通道PWM輸出,對應的輸出口為OUT0-7,支持8個通道同時觸發硬件比較輸出。

ZMC408CE可靈活進行硬件資源擴展,通過CAN或EtherCAT總線可擴展至4096個輸入和4096個輸出。

→ZMC432,ZMC408CE均使用同一套API函數,均支持C、C++、C#、LabVIEW、Python、Delphi等開發語言,支持VC6.0、VB6.0、Qt、.Net等平臺,支持Windows、Linux、WinCE、iMac操作系統。

wKgZomXn4jiAaZ_jAACDWh6og8s828.png

上節課程中,我們介紹了ROS應用背景和Ubuntu18.04安裝ROS Melodic詳細過程,并且通過ROS編程案例“消息發布和訂閱”來詳細說明正運動技術EtherCAT運動控制器ROS的應用開發。詳情點擊→EtherCAT運動控制器在ROS上的應用(上)。

01 配置正運動技術動態鏈接庫環境

1.添加動態鏈接庫

在程序包目錄zmotion(catkin_ws/src/zmotion/)下新建文件夾lib,存放動態鏈接庫libzmotion.so。

wKgaomXxTE2ANWBhAAE0bz0vPRM519.png

wKgZomXxTFGAB3F0AADrh5Pp-Aw252.png

在CMakeLists.txt中添加第三方庫路徑(build下):

link_directories( lib ${catkin_LIB_DIRS} )

并在CMakeLists.txt文件中鏈接動態鏈接庫(調用鏈接庫時文件名去掉lib和.so):

target_link_libraries(talker ${catkin_LIBRARIES} zmotion)

2.添加庫函數zmcaux.cpp、zmotion.h、zmcaux.h

添加zmcaux.cpp文件到catkin_ws/src/zmotion/src目錄下:

wKgaomXxTFmAUAJMAAEOLQ107os992.png

添加頭文件zmotion.h、zmcaux.h到catkin_ws/src/zmotion/include/ zmotion目錄下:

wKgZomXxTF-AKj7cAAEAzVSQJoc960.png

并在CMakeLists.txt中添加這三個庫文件:

add_executable(talker src/talker.cpp src/zmcaux.cpp include/zmotion/zmotion.h include/zmotion/zmcaux.h )

修改頭文件引用,如下圖所示(要填include文件的相對地址,zmotion為程序包名):

#include "zmotion/zmotion.h" #include "zmotion/zmcaux.h"

wKgZomXxTGOACFAZAAI6J4kD-9k101.png

02 正運動控制器在ROS下的單軸運動

talker節點實現軸0的運動,并將其位置實時發送給listener節點,修改talker.cpp如下:

1.添加句柄和頭文件

#include "zmotion/zmotion.h" #include "zmotion/zmcaux.h" ZMC_HANDLE g_handle=NULL;

2.通過EtherNET鏈接運動控制器

ZMC_LinuxLibInit(); //以太網(Ethernet)鏈接 char ipaddr[16] = {"192.168.0.11"}; int x =ZAux_OpenEth(ipaddr,&g_handle); //***ZMC ROS_INFO("以太網鏈接控制器:%d",x);//返回0則連接成功

3.實現單軸運動

ZAux_Direct_SetSpeed(g_handle, 0, 200); //設置軸0運動速度為200units/s ZAux_Direct_SetAccel(g_handle, 0, 2000); //設置軸0加速度為2000units/s/s ZAux_Direct_SetDecel(g_handle, 0, 2000); //設置軸0減速度為2000units/s/s ZAux_Direct_SetSramp(g_handle, 0, 100); //設置軸0 S曲線時間100ms ZAux_Direct_Single_Move(g_handle, 0, 300); //軸0 相對與當前位置運動100 units

4.將實時位置發送給listener節點

float piValue; while (ros::ok()) { std_msgs::Float64 msg; ZAux_Direct_GetMpos(g_handle, 0, & piValue);//獲取時候 msg.data = piValue; //輸出,用來替代prinf/cout ROS_INFO("Position is: %f", msg.data); chatter_pub.publish(msg); ros::spinOnce(); //休眠,來使發布頻率為10Hz loop_rate.sleep(); }

5.編譯

cd ~/catkin_ws/ catkin_make

6.運行程序

//打開一個新終端 roscore //打開另一個新終端 cd ~/catkin_ws/ rosrun zmotion talker //打開另一個新終端 cd ~/catkin_ws/ rosrun zmotion listener

運行效果如下,實時輸出位置:

wKgaomXxTGmAZbzqAAOAJYe0rDc774.png

此外,我們在上位機上的示波器上可以看見,軸0做S曲線運動:

wKgaomXxTGyAA3ZMAACYGRvA_UM648.png

本次,正運動技術EtherCAT運動控制器在ROS上的應用(下),就分享到這里。

更多精彩內容請關注“正運動小助手”公眾號,需要相關開發環境與例程代碼,請咨詢正運動技術銷售工程師。

本文由正運動技術原創,歡迎大家轉載,共同學習,一起提高中國智能制造水平。文章版權歸正運動技術所有,如有轉載請注明文章來源。

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 運動控制器
    +關注

    關注

    2

    文章

    431

    瀏覽量

    25064
  • ethercat
    +關注

    關注

    19

    文章

    890

    瀏覽量

    39460
  • ROS
    ROS
    +關注

    關注

    1

    文章

    283

    瀏覽量

    17466
收藏 人收藏

    評論

    相關推薦

    脈沖全閉環EtherCAT運動控制器的固件升級

    固件是常用功能。推薦優先使用最新的RTSys軟件。 本文以ZMC406R-V2運動控制器為例給大家介紹正運動固件升級的多種方式。 ZMC406R-V2 6軸總線型運動
    的頭像 發表于 11-07 10:58 ?636次閱讀
    脈沖全閉環<b class='flag-5'>EtherCAT</b><b class='flag-5'>運動</b><b class='flag-5'>控制器</b>的固件升級

    SSI絕對值編碼EtherCAT運動控制器中的應用

    SSI絕對值編碼EtherCAT運動控制器中的應用
    的頭像 發表于 10-09 10:13 ?1134次閱讀
    SSI絕對值編碼<b class='flag-5'>器</b><b class='flag-5'>在</b><b class='flag-5'>EtherCAT</b><b class='flag-5'>運動</b><b class='flag-5'>控制器</b>中的應用

    BissC絕對值編碼EtherCAT運動控制器中的應用

    BissC多圈絕對值編碼EtherCAT運動控制器中的應用!
    的頭像 發表于 07-24 10:02 ?1106次閱讀
    BissC絕對值編碼<b class='flag-5'>器</b><b class='flag-5'>在</b><b class='flag-5'>EtherCAT</b><b class='flag-5'>運動</b><b class='flag-5'>控制器</b>中的應用

    EtherCAT運動控制器與PLC的區別

    工業自動化領域,EtherCAT運動控制器和PLC(Programmable Logic Controller,可編程邏輯控制器)都是不可
    的頭像 發表于 06-12 15:47 ?1430次閱讀

    什么是EtherCAT運動控制器?它有哪些特點?

    EtherCAT(Ethernet for Control Automation Technology)運動控制器,作為工業自動化領域中的一項關鍵技術,近年來受到了廣泛的關注和應用。它以其高速、高效
    的頭像 發表于 06-12 15:43 ?1152次閱讀

    ZMC900E控制器ROS2環境安裝指南

    ZMC900E是致遠電子研發的最新一代高性能EtherCAT控制器,支持ROS2系統,兼備強大功能和實時性,為工業應用帶來新的可能。本文將詳述ROS2特點和安裝,助力用戶
    的頭像 發表于 04-29 08:24 ?835次閱讀
    ZMC900E<b class='flag-5'>控制器</b>之<b class='flag-5'>ROS</b>2環境安裝指南
    主站蜘蛛池模板: 日本免费黄色网址 | 农村妇女色又黄一级毛片卡 | 久操免费在线 | 香蕉视频在线观看黄 | 午夜网站在线观看 | 婷婷丁香综合网 | 日本一区二区精品88 | 欧美三级在线观看视频 | 免费人成激情视频在线观看冫 | 免费黄色大片网站 | 欧美性白人极品1819hd高清 | h网站在线看| 色爱区综合激情五月综合色 | 男男浪荡性受高hnp肉 | 欧美日韩精品一区二区另类 | 日本午夜三级 | 夜色剧场| 亚洲精品第三页 | 女性一级全黄生活片在线播放 | 一区二区三区视频网站 | 最刺激黄a大片免费观看下截 | 天天操天天干天天插 | 久久天天躁狠狠躁狠狠躁 | 日本在线观看永久免费网站 | 黄视频免费| 欧美视频精品在线 | 免费国产一区 | 97影院理论 | 谁有毛片网站 | 男人日女人的网站 | 激情欧美在线 | h视频在线观看视频观看 | 日本人六九视频69jzz免费 | 午夜一级 | 人人爱人人爽 | 午夜一级成人 | 免费任我爽橹视频在线观看 | 国产成人综合自拍 | 快色视频在线观看 | 亚洲第一精品夜夜躁人人爽 | 欧美色视频超清在线观看 |