999国内精品永久免费视频,色偷偷9999www,亚洲国产成人爱av在线播放,6080亚洲人久久精品,欧美超高清xxxhd

首頁 新聞 工控搜 論壇 廠商論壇 產品 方案 廠商 人才 文摘 下載 展覽
中華工控網首頁
  P L C | 變頻器與傳動 | 傳感器 | 現場檢測儀表 | 工控軟件 | 人機界面 | 運動控制
  D C S | 工業(yè)以太網 | 現場總線 | 顯示調節(jié)儀表 | 數據采集 | 數傳測控 | 工業(yè)安全
  電 源 | 嵌入式系統(tǒng) | PC based | 機柜箱體殼體 | 低壓電器 | 機器視覺
強實時運動控制內核MotionRT750(五):EtherCAT總線冗余讓生產制造更可靠
深圳市正運動技術有限公司
收藏本文     查看收藏

強實時運動控制內核MotionRT750

MotionRT750是正運動技術首家自主自研的x86架構Windows系統(tǒng)或Linux系統(tǒng)下獨占確定CPU的強實時運動控制內核。

實時運動控制內核MotionRT750.png

該方案采用獨占確定CPU內核技術實現超強性能的強實時運動控制。它將核心的運動控制、機器人算法、數控(CNC)及機器視覺等強實時的任務,集中運行在1-2個專用CPU核上。與此同時,其余CPU核則專注于處理Windows/Linux相關的非實時任務。

此外集成MotionRT750 Runtime實時層與操作系統(tǒng)非實時層,并利用高速共享內存進行數據交互,顯著提升了運動控制與上層應用間的通信效率及函數執(zhí)行速度,最終實現更穩(wěn)定、更高效的智能裝備控制,確保了運動控制任務的絕對實時性與系統(tǒng)穩(wěn)定性,特別適用于半導體、電子裝備等高速高精的應用場合。

   

實時運動控制內核MotionRT750適用產品接線圖.png

MotionRT750應用優(yōu)勢:

1.跨平臺兼容性:支持Windows/Linux系統(tǒng),適配不同等級CPU。

2.開發(fā)靈活性:提供多語言編程接口,便于二次開發(fā)與功能定制。

3.實時性提升:通過CPU內核獨占機制與高效LOCAL接口,實現2-3μs指令交互周期,較傳統(tǒng)PCI/PCIe方案提速近20倍。

4.擴展能力強化:多卡多EtherCAT通道架構支持254軸運動控制及500μsEtherCAT周期。

5.系統(tǒng)穩(wěn)定性:32軸125μsEtherCAT冗余架構消除單點故障風險,保障連續(xù)生產。

6.安全可靠性:不懼Windows系統(tǒng)崩潰影響,藍屏時仍可維持急停與安全停機功能有效,確保產線安全運行。

7.功能擴展性:實時內核支持C語言程序開發(fā),方便功能拓展與實時代碼提升效率。

更多關于MotionRT750的詳情介紹與使用點擊→強實時運動控制內核MotionRT750(一):驅動安裝、內核配置與使用。

超實時EtherCAT運動控制卡XPCIE6032H

XPCIE6032H運動控制卡集成6路獨立EtherCAT主站接口。整卡最高可支持254軸運動控制;125usEtherCAT通訊周期時,兩個端口配置冗余最高可支持32軸運動控制。6個EtherCAT主站各通道獨立工作,多EtherCAT主站互不影響。

超實時EtherCAT運動控制卡XPCIE6032H.png

此外,對于EtherCAT接口數量需求不高的客戶,我們也有衍生型號XPCIE2032H可選。同系列產品XPCIE2032H集成2路獨立EtherCAT接口。整卡最高可支持至254軸運動控制;125usEtherCAT通訊周期時,單接口最高可支持32軸運動控制。2個EtherCAT主站各通道獨立工作,多EtherCAT主站互不影響。

超實時EtherCAT運動控制卡XPCIE2032H.png

XPCIE6032H運動控制卡面向半導體設備、精密3C電子、生物醫(yī)療儀器、新能源裝備、人形機器人及激光加工等高速高精場景,為固晶機、貼片機、分選機、鋰電切疊一體機、高速異形插件設備等自動化裝備提供核心運動控制支持。

XPCIE6032H硬件特性:

1.EtherCAT通訊周期可到125us(需要主機性能與實時性足夠)。

2.板卡集成6路獨立的EtherCAT主站接口,最多可支持254軸運動控制。

3.搭載運動控制實時內核MotionRT750。

4.相較于傳統(tǒng)的PCI/PCIe、網口等通訊方式,速度可提升了10-100倍以上。

5.板載16路高速輸入,16路高速輸出。

6.板載4路高速鎖存、4路硬件位置比較輸出、4路通用PWM輸出。
 

更多關于XPCIE6032H的詳情介紹與使用點擊→全球首創(chuàng)!PCIe超實時6通道EtherCAT運動控制卡上市!

PCIe EtherCAT實時運動控制卡XPCIE1032H

XPCIE1032H是一款基于PCI Express的EtherCAT總線運動控制卡,可選6-64軸運動控制,支持多路高速數字輸入輸出,可輕松實現多軸同步控制和高速數據傳輸。

PCIe EtherCAT實時運動控制卡XPCIE1032H.png

XPCIE1032H運動控制卡集成了強大的運動控制功能,結合MotionRT7運動控制實時軟核,解決了高速高精應用中,PC Windows開發(fā)的非實時痛點,指令交互速度比傳統(tǒng)的PCI/PCIe快10倍。

核間交互.png

XPCIE1032H硬件特性:

1.6-64軸EtherCAT總線+脈沖可選,其中4路單端500KHz脈沖輸出。

2.16軸EtherCAT同步周期500us,支持多卡聯(lián)動。

3.板載16點通用輸入,16點通用輸出,其中8路高速輸入和16路高速輸出。

4.通過EtherCAT總線,可擴展到512個隔離輸入或輸出口。

5.支持PWM輸出、精準輸出、PSO硬件位置比較輸出、視覺飛拍等。

6.支持直線插補、圓弧插補、連續(xù)軌跡加工(速度前瞻)。

7.支持電子凸輪、電子齒輪、位置鎖存、同步跟隨、虛擬軸、螺距補償等功能。

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



更多關于XPCIE1032H詳情點擊“不止10倍提速!PCIe EtherCAT實時運動控制卡XPCIE1032H 等您評測!”查看。


 

冗余的概念

什么是總線冗余功能?我們都知道,EtherCAT現場總線具有靈活的拓撲結構,設備間支持線型、星型、樹型的連接方式,其中線型結構簡單、傳輸效率高,大多數的現場應用中也是使用這種連接方式,如下圖所示。

冗余1.png

線型的連接方式確實簡單,走線靈活,便于現場設備布局與維護。在自動化的工業(yè)生產中,設備通常在不同的環(huán)境中長時間運行,線纜的老化、安裝連接不夠嚴謹等因素導致線纜斷連。

假如有一天第一個伺服和第二個伺服之間的線纜斷了,那么第1個伺服后面的設備是不是將無法正常運行呢?

冗余2.png

不管是哪種接線方式,線纜斷線將會影響設備的正常運轉,哪怕是傳統(tǒng)的CAN、RS485等通信的設備控制也都無法正常運轉。

問題還得要解決,那有沒有標準的、又不需要添加太多額外的設計成本,就能解決上述的問題呢?一起來看EtherCAT總線給出的解決方案,以及EtherCAT冗余技術的實現原理。我們先看它的連接方式,如下圖所示。

冗余3.png

從EtherCAT的線纜冗余接線圖中可以看出,復用了最后一個從站設備的OUT端接回主站,是不是有點巧妙呢?減少了硬件成本,還能解決問題,確實受大家喜歡。再來細看它的數據流向,假設還是第一個伺服和第二個伺服之間斷開了,它的工作原理如下圖所示。

冗余4.png

伺服1和伺服2的線纜斷開后仍與從站設備連接著,但通信線路變成兩條支線,設備仍然可以正常通信,設備依然還能夠繼續(xù)控制運行。上述就是EtherCAT冗余的解決方案,將線型結構變成了環(huán)形結構,實現了鏈路冗余功能。

冗余功能的優(yōu)勢

01 冗余功能標準化

雙網口的EtherCAT主站與線纜冗余,使用了最后一個從站設備的OUT端口,使得EtherCAT冗余功能標準化。

02 增強系統(tǒng)可靠性和穩(wěn)定性

工業(yè)自動化行業(yè)中通常要求總線上的設備不間斷運轉,不允許停止生產,冗余技術可以實現應用系統(tǒng)的可靠性和穩(wěn)定性。

03 故障診斷與處理

當出現線纜斷線時,變成兩條之鏈路控制繼續(xù)工作,同時EtherCAT可以自動檢測到總線系統(tǒng)中的故障點,可大大簡化系統(tǒng)的維護工作,提高了設備的維護性。

總線冗余的軟硬件配置

(1)安裝MotionRT750強實時運動控制內核的工控機一臺。

(2)XPCIE6032H運動控制卡,該卡自帶槽位0到槽位5總共6個EtherCAT總線主站接口。也可以采用XPCIE2032H運動控制卡,該卡自帶槽位0到槽位1總共2個EtherCAT總線主站接口。

XPCIE6032H總線冗余的軟硬件配置.png

XPCIE2032H總線冗余的軟硬件配置.png

(3)8個總線伺服驅動器和1個ZMIO310的EtherCAT總線擴展模塊。

ZMIO310總線擴展模塊.png

Qt開發(fā)MotionRT750強實時運動控制內核

Qt項目的創(chuàng)建

1.打開Qt Creator參考如下步驟創(chuàng)建新的Qt項目。

1.png

2.png

3.png

4.png

5.png

2.把廠商提供的zmotion.dll、zmotion.lib、zmotion.h、zmcaux.cpp、zmcaux.h庫文件拷貝到新建的QT項目下(Linux系統(tǒng)的使用libzmotion.so的動態(tài)庫)。

6.png

3.如果想實現純上位機的總線初始化,可以找廠商提供一下以下2個文件,進行總線初始化。

7.png

4.添加外部庫【選擇項目后右鍵】→【添加庫】→【外部庫】。

8.png

5.引入頭文件并定義控制器的句柄。

9.png

6.至此Qt項目新建完成,可以進行MotionRT750的項目開發(fā)了。

相關PC函數介紹

1.上位機連接MotionRT750的接口。

指令11.png

2.總線冗余相關的指令上位機暫時還沒封裝成現成的指令,我們可以通過在線命令直接封裝實現。

總線冗余功能相關Basic指令介紹:

指令1.png

指令2.png


  萬能上位機接口在線命令介紹:

指令264.png

指令265.png

通過在線命令封裝Basic的軸速度設置指令得到上位機的軸速度設置指令例程如下:

運動速度指令.png

/*************************************************************
Description:    //設置軸速度,單位為units/s,當多軸運動時,作為插補運動的速度
Input:          //卡鏈接handle
  		   iaxis 軸號
      		   fValue 設置的速度值
Output:         //
Return:         //錯誤碼
*************************************************************/
int32 __stdcall ZAux_Direct_SetSpeed(ZMC_HANDLE handle, int iaxis, float fValue)
{
    char  cmdbuff[2048];
    char  cmdbuffAck[2048];
    if( iaxis > MAX_AXIS_AUX)
    {
        return  ERR_AUX_PARAERR;
    }
    //生成Basic命令
    sprintf(cmdbuff, "SPEED(%d)=%f", iaxis, fValue);
    //調用命令執(zhí)行函數
    return ZAux_DirectCommand(handle, cmdbuff, cmdbuffAck, 2048);
}

相關測試代碼介紹

1.上位機如何鏈接上MotionRT750。

//通過LOCAL接口連接RT750, LOCAL接口的指令交互速度快至3us以內
int rint = ZAux_FastOpen(5,"LOCAL",1000,&g_handle);
if(0 == rint)
{
    //控制器連接成功,初始化程序變量
    ConnectNum=0;
    ContrStatus=1;
    //控制器連接成功,啟動定時器
    startTimer(200);
    //控制器連接成功,開始正常初始化
    MainWindow::ZmcEcatInit(SlotId,BeiYongSlotId);
    //初始化線程和 Worker
    thread = new QThread(this);
    worker = new Worker(); // 注意:不指定父對象
    //將 Worker 移至子線程
    worker->moveToThread(thread);
    //連接信號與槽
    connect(thread, &QThread::started, worker, &Worker::doWork);
    connect(worker, &Worker::workFinished, thread, &QThread::quit);
    connect(worker, &Worker::workFinished, worker, &QObject::deleteLater);
    connect(thread, &QThread::finished, thread, &QObject::deleteLater);
    //可選:根據子線程的總線掃描情況,彈出對應彈窗
    connect(worker, &Worker::EcatInitStatus, this,&MainWindow::EcatScanInfo);
    connect(worker, &Worker::UpdateLog, this,&MainWindow::UpdateLog);
    //啟動狀態(tài)監(jiān)控線程
    thread->start();
}

2.如何實現純上位機的總線初始化。

//Qt的總線初始化子函數
int MainWindow::ZmcEcatInit(int ScanSlotId ,int BackSlotId)
{
    //定義總線初始化的信息結構體
    struct  EcatInitInfoSet MyEcatInitInfo;
    //是否自定義初始化參數,設置1的話使用默認的總線初始化參數,設置成0則需要自定義總線初始化相關參數;
    MyEcatInitInfo.InitStructFlag = 0;
     if (MyEcatInitInfo.InitStructFlag != 1)
     {
        //【1. 本地軸參數,用于指定本地軸的起始 ID 和使用的軸數量】
        MyEcatInitInfo.LocalAxisId = 0;
        MyEcatInitInfo.LocalAxisNum = 0;
        //【2. 驅動軸相關參數,用于指定驅動軸的起始 ID 和數量】
        MyEcatInitInfo.DriveAxisStart = 0;
        MyEcatInitInfo.DriveAxisNum = -1;   // 驅動軸數量,-1 表示總線初始化的時候不判斷驅動的軸數量是否對上
        MyEcatInitInfo.EcatNodeNum = -1;    // 總線節(jié)點數目,-1 表示總線初始化的時候不判斷節(jié)點個數是否對上
        for (int i = 0; i < 128; i++)
        {
            MyEcatInitInfo.DrivePdoMode[i] = 12; // PDO 模式數組
        }
        // 總線初始化時是否自動使能,1 驅動器自動使能,0 不使能驅動器
        MyEcatInitInfo.DriveEnable = 1;
        //【3、冗余設置】
        MyEcatInitInfo.BusRedSwitch=1;	//總線冗余開關(1=開啟,0=關閉)
        MyEcatInitInfo.RedSpareSlot=1;	//冗余備用槽編號
    }
    //開始總線初始化
    int Err = ZAux_BusCmd_EcatScan(g_handle,ScanSlotId, MyEcatInitInfo,10000,BackSlotId);
    MainWindow::EcatScanInfo(Err);
    return Err;
}

3.指定哪個總線接口為主槽位號,哪個總線接口為從槽位號。

//停止總線
sprintf(cmdbuff, "SLOT_STOP(%d)", SlotId);
ZAux_Execute(handle, cmdbuff, ReceBuff, 256);
//設置總線冗余的從總線槽位號,總線掃描前設置
if((BusRedSwitch==1)&&( SlotId!=RedSpareSlot))
{
    //等待200ms
    MyDelayMs(200, pOutTime);
    //設置總線槽位號SlotId為主總線槽,設置RedSpareSlot為從總線槽
    sprintf(cmdbuff, " SLOT_SLAVE(%d)=%d", SlotId,RedSpareSlot);
    ZAux_Execute(handle, cmdbuff, ReceBuff, 256);
}
//等待200ms
MyDelayMs(200, pOutTime);
//掃描總線
sprintf(cmdbuff, "SLOT_SCAN(%d) ?return", SlotId);
Iresult += ZAux_Execute(handle, cmdbuff, ReceBuff, 256);


  通過RTSys軟件的在線命令功能,輸入?*slot指令查詢XPCIE6032H的槽位號分布情況如下:

指令查詢XPCIE6032H的槽位號分布情況.png

通過RTSys軟件的在線命令功能,輸入?*slot指令查詢XPCIE2032H的槽位號分布情況如下:

指令查詢XPCIE2032H的槽位號分布情況.png

4.通過Qt的定時器實時獲取總線In口和Out口的通訊狀態(tài)。

//3、更新ECAT In口與Out口狀態(tài)
sprintf(Cmdbuff, "?NODE_INFO(%d,%d,6)",SlotId,CurNodeId);
Err = ZAux_Execute(g_handle, Cmdbuff, AckBuff, 256);
if( 0== Err)
{
    Tempint =std::atoi(AckBuff);
    //如果bit0為1,則總線IN口通訊正常,設置為綠色
    if((Tempint==1)||(Tempint==3))
    {
        EcatInList[i]->setStyleSheet(
            "QPushButton {"//背景色
            "    background-color: rgb(50, 205, 50);"
             "}"
            "QPushButton:hover {" 		//鼠標懸停時的背景色
            "   background-color: rgb(50, 205, 50);"
            "}"
            "QPushButton:pressed {"//鼠標按下時的背景色
            "   background-color: rgb(50, 205, 50);"
            "}");
    }        //否則總線IN口通訊異常,設置為紅色
    else
    {
            EcatInList[i]->setStyleSheet(
            "QPushButton {"//背景色
            "    background-color: rgb(205, 50, 50);"
            "}"
            "QPushButton:hover {" 		//鼠標懸停時的背景色
            "   background-color: rgb(205, 50, 50);"
            "}"
            "QPushButton:pressed {"//鼠標按下時的背景色
            "   background-color: rgb(205, 50, 50);"
            "}");
    }
    //如果bit1為1,則總線Out口通訊正常,設置為綠色
    if((Tempint==2)||(Tempint==3))
    {
            EcatOpList[i]->setStyleSheet(
            "QPushButton {"//背景色
            "    background-color: rgb(50, 205, 50);"
             "}"
            "QPushButton:hover {" 		//鼠標懸停時的背景色
            "   background-color: rgb(50, 205, 50);"
            "}"
            "QPushButton:pressed {"//鼠標按下時的背景色
            "   background-color: rgb(50, 205, 50);"
            "}");
    }
    //否則總線Out口通訊異常,設置為紅色
    else
    {
            EcatOpList[i]->setStyleSheet(
            "QPushButton {"//背景色
            "    background-color: rgb(205, 50, 50);"
            "}"
            "QPushButton:hover {" 		//鼠標懸停時的背景色
            "   background-color: rgb(205, 50, 50);"
            "}"
            "QPushButton:pressed {"//鼠標按下時的背景色
            "   background-color: rgb(205, 50, 50);"
            "}");
    }
}

5.總線冗余演示視頻可點擊→“正運動強實時運動控制內核MotionRT750”查看。

完整代碼獲取地址

二維碼.png

本次,正運動技術強實時運動控制內核MotionRT750(五):EtherCAT總線冗余讓生產制造更可靠,就分享到這里。

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

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

二維碼.png

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


 

狀 態(tài): 離線

公司簡介
產品目錄

公司名稱: 深圳市正運動技術有限公司
聯(lián) 系 人: 戴德弟
電  話: 0755-32976042
傳  真: 0755-2606 6955
地  址: 深圳市寶安區(qū)西鄉(xiāng)洲石路陽光工業(yè)園A1棟5樓
郵  編: 518100
主  頁:
 
該廠商相關技術文摘:
機器視覺運動控制一體機在線路板跟隨灌膠上的應用
深圳·EelE智博會:智控賦能,驅動未來制造
機器視覺運動控制一體機在喇叭跟隨點膠上的應用
強實時運動控制內核MotionRT750(四):高速貼裝應用中的拱形運動
聚焦深圳國際電子展 | 正運動攜熱門產品和方案!等您來體驗!
超高速EtherCAT實時運動控制卡在高速半導體固晶機上的應用
強實時運動控制內核MotionRT750(三):us級高速交互之C#,為智能裝備提速
激光振鏡運動控制器在流水線激光打標上的應用
高速高精運動控制!PCIe超實時2通道EtherCAT運動控制卡上市!
步進控制的光柵尺全閉環(huán)EtherCAT運動控制器ZMC432CL-V2(五):Python編程調試
單旋轉臺XYR在精密點膠/外觀檢測/精密焊接的C#應用
更多文摘...
立即發(fā)送詢問信息在線聯(lián)系該技術文摘廠商:
用戶名: 密碼: 免費注冊為中華工控網會員
請留下您的有效聯(lián)系方式,以方便我們及時與您聯(lián)絡

關于我們 | 聯(lián)系我們 | 廣告服務 | 本站動態(tài) | 友情鏈接 | 法律聲明 | 不良信息舉報
工控網客服熱線:0755-86369299
版權所有 中華工控網 Copyright©2022 Gkong.com, All Rights Reserved