<style id="7i3y3"></style>

      <sub id="7i3y3"><i id="7i3y3"></i></sub>

        午夜精品一区二区三区成人,中文字幕av一区二区,亚洲AVAV天堂AV在线网阿V,肥臀浪妇太爽了快点再快点,国产网友愉拍精品视频手机,国产精品无码a∨麻豆,久久中文字幕一区二区,a级国产乱理伦片在线观看al
        首頁 新聞 工控搜 論壇 廠商論壇 產品 方案 廠商 人才 文摘 下載 展覽
        中華工控網首頁
          P L C | 變頻器與傳動 | 傳感器 | 現場檢測儀表 | 工控軟件 | 人機界面 | 運動控制
          D C S | 工業以太網 | 現場總線 | 顯示調節儀表 | 數據采集 | 數傳測控 | 工業安全
          電 源 | 嵌入式系統 | PC based | 機柜箱體殼體 | 低壓電器 | 機器視覺
        項目工程下載與XML配置文件下載:EtherCAT超高速實時運動控制卡XPCIE1032H上位機C#開發(十)
        深圳市正運動技術有限公司
        收藏本文     查看收藏

        XPCIE1032H功能簡介

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

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

        運動控制卡XPCIE1032H.png

        XPCIE1032H 運動控制卡支持PWM,PSO功能,板載16進16出通用IO口,其中輸出口全部為高速輸出口,可配置為4路PWM輸出口或者16路高速PSO硬件比較輸出口。輸入口含有8路高速輸入口,可配置為4路高速色標鎖存或兩路編碼器輸入。

        XPCIE1032H運動控制卡搭配MotionRT7實時內核,使用本地LOCAL接口連接,通過高速的核內交互 ,可以做到更快速的指令交互,單條指令與多條指令一次性交互時間可以達到3-5us左右。

        XPCIE1032H控制卡架構圖.png

        ?XPCIE1032H運動控制卡與MotionRT7運動控制實時內核的配合具有以下優勢:

        優勢.png

        1.支持多種上位機語言開發,所有系列產品均可調用同一套API函數庫;

        2.借助核內交互,可以快速調用 運動指令,響應時間快至微秒級,比傳統PCI/PCIe快10倍;

        3.解決傳統PCI/PCIe運動控制卡在Windows環境下控制系統的非實時性問題;

        4.支持一維/二維/三維PSO(高速硬件位置比較輸出),適用于視覺飛拍、精密點膠和激光能量控制等應用;

        5.提供高速輸入接口,便于實現位置鎖存;

        6.支持EtherCAT總線和脈沖輸出混合聯動、混合插補。

        多種上位機開發方式.png

        ?使用XPCIE1032H運動控制卡和MotionRT7運動控制實時內核進行項目開發時,通常需要進行以下步驟:

        1.安裝驅動程序,識別控制卡XPCIE1032H;

        2.打開并執行文件“MotionRT710.exe”,配置參數和運行運動控制實時內核;

        3.使用ZDevelop軟件連接到控制器,進行參數監控。連接時請使用PCI/LOCAL方式,并確保ZDevelop軟件版本在3.10以上;

        4.完成控制程序開發,通過LOCAL鏈接方式連接到運動控制卡,實現實時運動控制。

        運動控制項目開發.png

        ?與傳統PCI/PCIe卡和PLC的測試數據結果對比:

        核內交互數據.png

        我們可以從測試對比結果看出,XPCIE1032H運動控制卡配合實時運動控制內核MotionRT7,在LOCAL鏈接(核內交互)的方式下,指令交互的效率是非常穩定,當測試數量從1w增加到10w時,單條指令交互時間與多條指令交互時間波動不大,非常適用于高速高精的應用。

        XPCIE1032H控制卡安裝

        • 關閉計算機電源。

        • 打開計算機機箱,選擇一條空閑的XPCIE卡槽,用螺絲刀卸下相應的擋板條。

        • 將運動控制卡插入該槽,擰緊擋板條上的固定螺絲。

        一、C#語言進行運動控制項目開發

        創建項目.png

        1.到正運動技術官網的下載中心選擇需要的平臺庫文件。

        庫文件下載地址:  http://www.zmotion.com.cn/download_list_21.html

        庫文件下載路徑.png

        2.解壓下載的安裝包找到“ Zmcaux.cs ”,“ zauxdll.dll ”,“ zmotion.dll ”放入到項目文件中。

        (1)“Zmcaux.cs”放在項目根目錄文件中,與bin目錄同級。

        1.png

        (2)“zauxdll.dll”,“zmotion.dll”放在bin → Debug。

        2.png

        3.用vs打開新建的項目文件,在右邊的解決方案資源管理器中點擊顯示所有,然后鼠標右鍵點擊zmcaux.cs文件,點擊包括在項目中。

        3.png
        4.png

        4.雙擊Form1.cs里面的Form1,出現代碼編輯界面,在文件開頭寫入using cszmcaux,并聲明控制器句柄g_handle。

        5.png

        二、PC函數介紹

        相關PC函數介紹詳情可參考“ZMotion PC函數庫編程手冊 V2.1.1”。

        指令1.png

        指令2.png

        三、XML文件生成ZML文件添加步驟

        大家都知道,正運動總線控制器事先就把一些總線從站的 XML文件 添加到控制器的固件里面了,所以配合市面上大部分的EtherCAT從站,客戶只需要下載總線初始化腳本就可以和對應從站通訊,具體可以參考往期推文 EtherCAT超高速實時運動控制卡XPCIE1032H上位機C#開發(二):EtherCAT總線初始化 。

        針對市面上剛出的總線從站,我們沒有及時把XML文件添加到控制器固件里面或總線掃描的時候遇見不支持的從站,這個時候需要我們自己添加XML文件。

        總線掃面失敗.png

        正運動控制器添加XML文件的步驟如下:

        (1)通過XMLParsingTools工具軟件將XML轉換成ZML文件;

        (2)把生成的ZML文件添加到Zpj項目里面,連同總線初始化腳本的Bas文件一起下載到控制器里面即可。

        1、通過XMLParsingTools工具將XML文件轉換成ZML文件。

        (1)點擊左上角文件夾打開XML文件,選擇對應的從站型號和從站類型( 這里以友商的一拖四總線驅動器為例)。

        1.png

        (2)點擊左上角文件夾位置導出ZML文件即可。

        2.png

        2、RTSys軟件同時下載ZML文件與總線初始化的Bas文件(下載ZPJ項目)。

        (1)把剛剛生成的ZML文件拷貝到總線初始化的ZPJ項目文件夾下,通過RTSys軟件打開【EtherCAT參數.zpj】這個項目文件。

        3.png

        (2)右鍵文件視圖區域,點擊【增加到項目】將剛剛生成的ZML文件添加到項目里面。

        4.png

        (3)點擊連接按鈕,通過Local接口鏈接上控制器。

        5.png

        (4)點擊【下載到ROM】,將整個項目下載到控制器里面掉電保存即可。

        6.png

        3.將例程下載到ZML文件與總線初始化的Bas文件。

        連接控制器,新建ZPJ項目文件,將總線初始化的Bas文件和剛剛生成的zml文件復制到新建項目的目錄下并一一添加進來,最后下載到控制器的ROM里面即可掉電保存。

        7.png

        三、應用例程及實現效果

        1、點擊連接按鈕鏈接到MotionRT7運動控制軟核。

        //連接控制器
        private void Btn_cn_Click(object sender, EventArgs e)
        {
            int ret;
            //鏈接控制器
            ret= zmcaux.ZAux_FastOpen(5,textBox1.Text,1000,out g_handle);
            if (g_handle != (IntPtr)0)
            {
                MessageBox.Show("RT7鏈接成功!", "提示");
                timer1.Enabled = true;
            }
            else
            {
                MessageBox.Show("RT7鏈接失敗"+"錯誤代碼"+ ret);
            }
        }

        2、新建Zpj項目文件。

        //新建zpj文件
        private void NewZpjFile_Click(object sender, EventArgs e)    
        {
            try
            {
                //創建保存文件對話框  
                SaveFileDialog saveFile = new SaveFileDialog();  
                saveFile.Filter = "ZMC Project Files(*.zpj)|*.zpj";
                //是否覆蓋當前文件
                saveFile.OverwritePrompt = true;  
                //如果設為true就會使用系統默認目錄
                saveFile.RestoreDirectory = true;  //還原目錄
                //如果保存對話框操作成功
                if (saveFile.ShowDialog() == DialogResult.OK)
                {
                    FileStream fs1 =new FileStream(saveFile.FileName, FileMode.Create, FileAccess.ReadWrite);  
                    fs1.Close();
                    //ZPJ文件名
                    m_ZpjFileName = saveFile.FileName;
                    //ZPJ文件路徑
                    m_ZpjFilePath = System.IO.Path.GetDirectoryName(m_ZpjFileName); 
                    System.IO.File.Create(m_ZpjFileName).Close();
                    Thread.Sleep(100);
                    if (!System.IO.File.Exists(m_ZpjFileName))
                    {
                        MessageBox.Show("文件不存在");
                    }
                    //初始化ZPJ文件信息
                    Czpj();
                }                       
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
        //初始化ZPJ文件信息_通過Ini文件記錄
         public void Czpj()
        {
            string LpAppname, Lpkeynum, Lpdata;
            LpAppname = "Controller";
            Lpkeynum = "TypeName ";
            //寫控制器信息,初始化ZPJ文件信息          
            Thread.Sleep(200);
            var MyIni = new IniFile(@m_ZpjFileName);
            MyIni.Write(Lpkeynum, "", LpAppname);
            MyIni.Write("IfUpload", "0", LpAppname);
            MyIni.Write("UserVersion", "1.0", LpAppname);
            Lpdata = num.ToString(); //
            MyIni.Write("Files",Lpdata, LpAppname);
            MyIni.Write("Breaks", "0", LpAppname);
            MyIni.Write("Watches", "0", LpAppname);
            MyIni.Write("PicPack", "0", LpAppname);
            MyIni.Write("BREAKMODE", "1", LpAppname);
            m_ZpjOPenFlag = true;
        }

        3、添加Bas文件到Zpj項目里面。

        //添加bas文件
        private void AddBas_Click(object sender, EventArgs e)
        {
            if (!m_ZpjOPenFlag) 
            {
                MessageBox.Show("先新建/打開ZPJ項目!");
                return;
            }
            //創建打開文件對話框
            OpenFileDialog ofd2 = new OpenFileDialog();
            ofd2.Filter = "ZMC Basic Files (*.bas)|*.bas";
            ofd2.RestoreDirectory = true;
            //如果文件選擇成功
            if (ofd2.ShowDialog() == DialogResult.OK)
            {
                string fullname = ofd2.FileName;
                m_ZpjFilePath = System.IO.Path.GetDirectoryName(fullname); //路徑
                m_SubFileName = System.IO.Path.GetFileName(fullname);  //名稱
                m_ZpjFile_Info[num].pFileName = m_SubFileName;
                m_ZpjFile_Info[num].nAutoTask = -1;
                m_ZpjFile_Info[num].nFileType= 1;    //bas的文件類型是1
                num++;
                 //通過Ini文件來記錄Zpj項目文件信息 
                SaveZpj();
                //在控件上顯示出來項目文件信息
                ShowFileList();
            }
        }
        //保存ZPJ文件
        public void SaveZpj()
        {
            //打開ZPJ的ini文件
            string IniFileName = m_ZpjFilePath + "\\" + m_ZpjFileName;
            var MyIni = new IniFile(IniFileName);
            string LpAppname, Lpkeynum, Lpdata;
            LpAppname = "Controller";
            Lpkeynum = "TypeName ";
            String iFileName = "";
            MyIni.Write("Files", num.ToString(), LpAppname);
            //寫FileList信息
            LpAppname = "FileList";
            //遍歷ZPJ里面的文件情況
            int i=0;
            for (i = 0; i < num; i++)
            {
                if (m_ZpjFile_Info[i].pFileName == "")
                {
                    Lpdata = "空文件!" + m_ZpjFile_Info[i].nAutoTask.ToString();
                }
                //子文件名帶路徑
                iFileName = m_ZpjFilePath + "\\" + m_ZpjFile_Info[i].pFileName;
                if (!System.IO.File.Exists(iFileName))
                {
                    Lpdata = "文件不存在!" + m_ZpjFile_Info[i].pFileName;
                    MessageBox.Show(Lpdata);
                }
                //更新子文件ID
                Lpkeynum = "File" + (i + 1);
                Lpdata = m_ZpjFile_Info[i].pFileName;
                MyIni.Write(Lpkeynum, Lpdata, LpAppname);
                //更新子文件類型
                Lpkeynum = "FileType" + (i + 1);
                Lpdata = m_ZpjFile_Info[i].nFileType.ToString();
                MyIni.Write(Lpkeynum, Lpdata, LpAppname);
                //更新子文件自動運行號
                Lpkeynum = "AutoRun" + (i + 1);
                Lpdata = m_ZpjFile_Info[i].nAutoTask.ToString();
                MyIni.Write(Lpkeynum, Lpdata, LpAppname);            
            }
            //刪除多余的鍵
            Lpkeynum = "File" + (num+1);
            MyIni.DeleteKey(Lpkeynum, LpAppname);
            Lpkeynum = "FileType" + (num + 1);
            MyIni.DeleteKey(Lpkeynum, LpAppname);
            Lpkeynum = "AutoRun" + (num + 1);
            MyIni.DeleteKey(Lpkeynum, LpAppname);
            //寫OpenList信息
            LpAppname = "OpenList";  
            m_ZpjOPenFlag = true;
        }

        4、添加Zml文件到Zpj項目里面。

        //添加zml文件
        private void AddZml_Click(object sender, EventArgs e)
        {
            if (!m_ZpjOPenFlag)
            {
                MessageBox.Show("先新建/打開ZPJ項目!");
                return;
            }
            OpenFileDialog ofd2 = new OpenFileDialog();
            ofd2.Filter = "ZMC ZML Files (*.zml)|*.zml";
            ofd2.RestoreDirectory = true;
            if (ofd2.ShowDialog() == DialogResult.OK)
            {
                string fullname = ofd2.FileName;
                m_ZpjFilePath = System.IO.Path.GetDirectoryName(fullname); //路徑
                m_SubFileName = System.IO.Path.GetFileName(fullname);  //名稱
                m_ZpjFile_Info[num].pFileName = m_SubFileName;
                m_ZpjFile_Info[num].nAutoTask = -1;
                m_ZpjFile_Info[num].nFileType = 19;//ZML文件的文件類型是19
                num++;
                //通過Ini文件來記錄Zpj項目文件信息 
                SaveZpj();
                //在控件上顯示出來項目文件信息
                ShowFileList();
            }
        }

        5、將ZPJ文件下載到控制器的ROM里面進行掉電保存。

        //下載到rom
        private void button9_Click(object sender, EventArgs e)
        {
            if (!m_ZpjOPenFlag)
            {
                MessageBox.Show("先新建/打開ZPJ項目!");
                return;
            }
            if (g_handle != (IntPtr)0)
            {
                ShowFileListSave();
                SaveZpj();
                String ZpjFileName = m_ZpjFilePath + "\\" + m_ZpjFileName;
                String m_ZarFileName = m_ZpjFilePath + "\\" + "ZmcZpj.Zar";
                //將ZPJ項目下載到控制器的ROM里面
                zmcaux.ZAux_ZpjDown(g_handle, ZpjFileName, m_ZarFileName, null, 0, 1);
            }
            else
            {
                MessageBox.Show("控制器未連接");
            }
        }

        6、通過RTSys軟件監控Zpj文件下載后的執行情況。

        8.png

        XML轉換工具使用教學:

        完整代碼下載地址.png

        本次,正運動技術 項目工程下載與XML配置文件下載 :EtherCAT超高速實時運動控制卡XPCIE1032H上位機C#開發(十),就分享到這里。

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

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

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

        二維碼-02.jpg


         

        狀 態: 離線

        公司簡介
        產品目錄

        公司名稱: 深圳市正運動技術有限公司
        聯 系 人: 戴德弟
        電  話: 0755-32976042
        傳  真: 0755-2606 6955
        地  址: 深圳市寶安區西鄉洲石路陽光工業園A1棟5樓
        郵  編: 518100
        主  頁:
         
        該廠商相關技術文摘:
        強實時運動控制內核MotionRT750(十):運動控制中的微調軌跡動態補償
        機器視覺運動控制一體機在大功率共模電感多面AI外觀缺陷檢測應用
        MotionRT750 SoftMotion:XPCIE1032H超高速運動控制卡在AOI檢測設備上的應用
        強實時運動控制內核MotionRT750(九):內置C語言的自定義機械手模型實現
        NEPCON ASIA 2025:解鎖行業新機遇,我們在深圳等您
        開放式激光振鏡運動控制器在旋轉飛行打標中的應用
        強實時運動控制內核MotionRT750(八):us級高速交互之LabVIEW,為智能裝備提速
        液態點膠密封解決方案,柔性升級,密封更可靠!
        柔性機械手視覺供料解決方案,提升無序分揀效率!
        【2025上海工博會】正運動展位智造未來(二)
        【2025上海工博會】正運動展位智造未來(一)
        【2025上海工博會】機器視覺運動控制一體機應用預覽(三)
        更多文摘...
        立即發送詢問信息在線聯系該技術文摘廠商:
        用戶名: 密碼: 免費注冊為中華工控網會員
        請留下您的有效聯系方式,以方便我們及時與您聯絡

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

        主站蜘蛛池模板: 亚洲国产区男人本色vr| 2020国产欧洲精品网站| 人妻无码不卡中文字幕系列| 五月综合激情婷婷六月| 国产成人精品三上悠亚久久| 亚洲码欧美码一区二区三区| 亚洲一区二区三区影院| 最新亚洲人成无码网站欣赏网| 亚洲国产av剧一区二区三区| 亚洲中文字幕有综合久久| 40岁大乳的熟妇在线观看| 色婷婷婷丁香亚洲综合| 熟妇人妻av无码一区二区三区| 国内精品卡一卡二卡三| 性生交片免费无码看人| 欧美人与动牲交A免费观看| 视频一区二区三区自拍偷拍| 国产999精品2卡3卡4卡| 免费无码VA一区二区三区| 国产极品粉嫩福利姬萌白酱| 狠狠色丁香久久婷婷综合蜜芽五月| 久久久久免费看成人影片| 国产在线码观看超清无码视频| 久久人妻国产精品| 国产精品视频第一第二区| 精品久久人人做爽综合| 无码 人妻 在线 视频| 免费黄色大全一区二区三区| 91日本在线观看亚洲精品| 四虎成人精品无码永久在线| 欧美村妇激情内射| 香蕉亚洲欧洲在线一区| 精品自拍自产一区二区三区| 久久精品国产99国产精品澳门| 精品国产成人三级在线观看| 国产情精品嫩草影院88av| 亚洲国产精品成人综合色| 日本a在线播放| 国产高清亚洲一区亚洲二区| 综合偷自拍亚洲乱中文字幕 | 妖精视频yjsp毛片永久|