国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

EtherCat--主站開(kāi)源的C語(yǔ)言庫(kù)SOEM-環(huán)境搭建

這篇具有很好參考價(jià)值的文章主要介紹了EtherCat--主站開(kāi)源的C語(yǔ)言庫(kù)SOEM-環(huán)境搭建。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

一、SOEM主站環(huán)境搭建

(一)安裝VS;

(二)下載SOEM 1.3.1 源代碼:鏈接地址?http://openethercatsociety.github.io/

(三)安裝WinPcap_4_1_3.exe:鏈接地址?https://www.winpcap.org/install/default.htm

二、整體目錄?

(一)soem目錄:實(shí)現(xiàn)主從站功能的主要文件和源文件(頭文件和源文件)
ethercatbase.c : 基于ether功能函數(shù),將數(shù)據(jù)封裝成ethercat幀;
ethercatmain.c : ethercat的初始化,從站數(shù)據(jù)的讀取;
定義ec_slave[],所有從站信息都在這個(gè)結(jié)構(gòu)體內(nèi);
ethercatcoe.c : CoE模塊,應(yīng)用層CoE協(xié)議;
ethercatfoe.c : FoE模塊;
ethercateoe.c : EoE模塊(設(shè)置、獲取IP函數(shù),發(fā)送、接收以太網(wǎng)幀);
ethercatdc.c : EtherCat分布式時(shí)鐘,實(shí)現(xiàn)主從站之間時(shí)針同步。

(二) osal/oshw目錄:操作系統(tǒng)接口文件
oshw.c : 網(wǎng)卡管理模塊;
nicdrv.c : EtherCat原始套接字驅(qū)動(dòng);
osal.c : 定時(shí)器,延時(shí)函數(shù)。

(三)test目錄
運(yùn)行一些demo程序,可以用wireshark工具監(jiān)控ethercat幀。

三、SOEM主站環(huán)境搭建

(一)SOEM代碼編譯

(1)打開(kāi)VS的命令行工具:x86 Native Tools Command Prompt for VS 2017

EtherCat--主站開(kāi)源的C語(yǔ)言庫(kù)SOEM-環(huán)境搭建

(2)進(jìn)入解壓的SOEM目錄

cd/d E:\SOEM-1.3.1? ??

EtherCat--主站開(kāi)源的C語(yǔ)言庫(kù)SOEM-環(huán)境搭建

(3)編譯lib(替換自己VS安裝地址)

make_libsoem_lib.bat "D:\Program Files(x86)\Microsoft Visual Studio\2017\Community\VC" x86

EtherCat--主站開(kāi)源的C語(yǔ)言庫(kù)SOEM-環(huán)境搭建

?(4)生成全部測(cè)試文件

make_test_win32_all.bat "D:\Program Files(x86)\Microsoft Visual Studio\2017\Community\VC" x86

EtherCat--主站開(kāi)源的C語(yǔ)言庫(kù)SOEM-環(huán)境搭建

?生成全部測(cè)試文件(生成exe等文件)simple_test.exe文件,至此完成了SOEM源碼的編譯。

(二)獲取當(dāng)前網(wǎng)絡(luò)設(shè)備

EtherCAT從站板配置好上電,通過(guò)網(wǎng)線連接至電腦。

(1)進(jìn)入到SOEM-1.3.1\test\win32\simple_test目錄。

cd test\win32\simple_test\

EtherCat--主站開(kāi)源的C語(yǔ)言庫(kù)SOEM-環(huán)境搭建

(2)網(wǎng)絡(luò)設(shè)備列表獲取

? 方法一:直接運(yùn)行simple_test,得到當(dāng)前網(wǎng)絡(luò)設(shè)備;

由于電腦可能有多個(gè)網(wǎng)絡(luò)設(shè)備(無(wú)線、有線、虛擬網(wǎng)絡(luò)等),可能不好判斷實(shí)際網(wǎng)絡(luò)設(shè)備。

simple_test

EtherCat--主站開(kāi)源的C語(yǔ)言庫(kù)SOEM-環(huán)境搭建

? 方法二:通過(guò)WinPcap來(lái)獲取設(shè)備列表。(使用方法一可直接跳過(guò)

? ? winpcap(windows packet capture)是windows平臺(tái)下一個(gè)免費(fèi),公共的網(wǎng)絡(luò)訪問(wèn)系統(tǒng)。開(kāi)發(fā)winpcap這個(gè)項(xiàng)目的目的在于為win32應(yīng)用程序提供訪問(wèn)網(wǎng)絡(luò)底層的能力。它用于windows系統(tǒng)下的直接的網(wǎng)絡(luò)編程。Winpcap提供了一個(gè)強(qiáng)大的編程接口,它很容易地在各個(gè)操作系統(tǒng)之間進(jìn)行移植,方便程序員進(jìn)行開(kāi)發(fā)。

? 1.下載并安裝WinPcap運(yùn)行庫(kù):http://www.winpcap.org/install/default.htm

? 2.下載WinPcap開(kāi)發(fā)包:http://www.winpcap.org/devel.htm

? 3.新建一個(gè)空項(xiàng)目。以管理員的權(quán)限打開(kāi)VS2017,新建一個(gè)VC++的Win32控制臺(tái)應(yīng)用程序,設(shè)置為空項(xiàng)目。

EtherCat--主站開(kāi)源的C語(yǔ)言庫(kù)SOEM-環(huán)境搭建

? ?4.添加wpcap.lib和ws2_32.lib兩個(gè)庫(kù)。

EtherCat--主站開(kāi)源的C語(yǔ)言庫(kù)SOEM-環(huán)境搭建

?? 5.設(shè)置項(xiàng)目。打開(kāi)項(xiàng)目屬性,如圖,添加WPCAP和HAVE_REMOTE這兩個(gè)宏定義。

EtherCat--主站開(kāi)源的C語(yǔ)言庫(kù)SOEM-環(huán)境搭建

? ?6.添加包含路徑(Include和Lib目錄)包含目錄和庫(kù)目錄。(上面下載的WinPcap開(kāi)發(fā)包)

EtherCat--主站開(kāi)源的C語(yǔ)言庫(kù)SOEM-環(huán)境搭建

?? 7.設(shè)置UAC。(非必須,推薦設(shè)置,讓生成的程序能夠自主觸發(fā)管理員權(quán)限對(duì)話框。無(wú)論如何,最終生成的程序都需要以管理員權(quán)限運(yùn)行)

EtherCat--主站開(kāi)源的C語(yǔ)言庫(kù)SOEM-環(huán)境搭建

? 8.直接運(yùn)行可能會(huì)出現(xiàn),“const char * 與char * 不兼容” 的問(wèn)題。

EtherCat--主站開(kāi)源的C語(yǔ)言庫(kù)SOEM-環(huán)境搭建

?9.完成上述步驟后,向項(xiàng)目添加需要的源文件即可。

注意:此處配置的為x64,否則會(huì)出現(xiàn)“找不到pcap.h”的情況。由于開(kāi)發(fā)winpcap項(xiàng)目的目的在于為win32應(yīng)用程序提供訪問(wèn)網(wǎng)絡(luò)底層的能力,因此開(kāi)發(fā)包里面有大量的WIN32的標(biāo)識(shí)符,直接使用會(huì)出現(xiàn)“未定以標(biāo)識(shí)符”錯(cuò)誤。

EtherCat--主站開(kāi)源的C語(yǔ)言庫(kù)SOEM-環(huán)境搭建

拷貝文件后,運(yùn)行跳出窗口 顯示網(wǎng)絡(luò)設(shè)備列表。

EtherCat--主站開(kāi)源的C語(yǔ)言庫(kù)SOEM-環(huán)境搭建

#define WIN32
#include <iostream>
#include "pcap.h"
#pragma comment(lib,"wpcap")

using namespace std;

int  main()
{
    pcap_if_t* alldevs;
    pcap_if_t* d;
    char errbuf[PCAP_ERRBUF_SIZE];
    //獲取設(shè)備列表
    if (pcap_findalldevs_ex(PCAP_SRC_IF_STRING, NULL, &alldevs, errbuf) == -1)
    {
        cout << "Error in pacp_findalldevs_ex:" << errbuf << endl;
        return -1;
    }
    int i = 0;
    for (d = alldevs; d != NULL; d = d->next)
    {
        cout << endl;
        cout << i++ << " " << d->name << endl;
        if (d->description)
            cout << " <" << d->description << ">" << endl;
        else
            cout << " <No description>" << endl;
    }
    if (i == 0)
    {
        cout << "No interfaces found!" << endl;
        return -1;
    }

    pcap_freealldevs(alldevs);

    return 0;
}

(三)SOEM代碼測(cè)試

(1)simple_test測(cè)試

運(yùn)行simple_test.exe \Device\NPF_{XXXX},其中\(zhòng)Device\NPF_{XXXX}是電腦的網(wǎng)絡(luò)設(shè)備符。

simple_test.exe \Device\NPF_{XXXX}

EtherCat--主站開(kāi)源的C語(yǔ)言庫(kù)SOEM-環(huán)境搭建

(2)simple_test測(cè)試結(jié)果

如果出現(xiàn)“No slave found!”則是沒(méi)有連接從站控制器,所以并沒(méi)有掃描到從站信息;

嘗試重連EtherCat從站后,掃面結(jié)果"1 slaves found and configured."

EtherCat--主站開(kāi)源的C語(yǔ)言庫(kù)SOEM-環(huán)境搭建

EtherCat--主站開(kāi)源的C語(yǔ)言庫(kù)SOEM-環(huán)境搭建

(四)Win11系統(tǒng)識(shí)別不到網(wǎng)絡(luò)設(shè)備列表

以管理員身份運(yùn)行命令行串口,輸入net start npf?啟動(dòng)NPF。

參考文檔:

EtherCat主站開(kāi)源的C語(yǔ)言庫(kù)SOEM說(shuō)明

【SOEM主站】一、SOEM主站環(huán)境搭建及連接板子測(cè)試

EtherCAT-SOEM主站搭建-windows

VS配置Winpcap環(huán)境及獲取設(shè)備列表

VS2019配置WinPcap開(kāi)發(fā)文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-447657.html

到了這里,關(guān)于EtherCat--主站開(kāi)源的C語(yǔ)言庫(kù)SOEM-環(huán)境搭建的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • EtherCAT主站源碼 基于STM32F407和STM32H743兩款芯片 通過(guò)移植開(kāi)源SOME主站代碼,使兩款芯片具有EtherCAT主站功能,支持DC同步功能

    EtherCAT主站源碼 基于STM32F407和STM32H743兩款芯片 通過(guò)移植開(kāi)源SOME主站代碼,使兩款芯片具有EtherCAT主站功能,支持DC同步功能

    EtherCAT主站源碼基于STM32F407和STM32H743兩款芯片,通過(guò)移植開(kāi)源SOME主站代碼,使兩款芯片具有EtherCAT主站功能,支持DC同步功能??芍С謪R川IS620N、松下A5B/A6B、歐姆龍G5系列、埃斯頓ProNet、邁信EP3E、臺(tái)達(dá)A2-E,偉創(chuàng)SD700這幾款EtherCAT總線伺服。支持的這些驅(qū)動(dòng)器可以混用,主站自動(dòng)

    2024年02月04日
    瀏覽(22)
  • EtherCAT 開(kāi)源主站 IGH 在 linux 開(kāi)發(fā)板的移植和伺服通信測(cè)試

    EtherCAT 開(kāi)源主站 IGH 在 linux 開(kāi)發(fā)板的移植和伺服通信測(cè)試

    手邊有一套正點(diǎn)原子linux開(kāi)發(fā)板imax6ul,一直在吃灰,周末業(yè)余時(shí)間無(wú)聊,把EtherCAT的開(kāi)源IGH主站移植到開(kāi)發(fā)板上玩玩兒,搞點(diǎn)事情做。順便學(xué)習(xí)研究下EtherCAT總線協(xié)議及其對(duì)伺服驅(qū)動(dòng)器的運(yùn)動(dòng)控制過(guò)程。實(shí)驗(yàn)很有意思,這里總結(jié)下實(shí)驗(yàn)過(guò)程,分享給有需要的小伙伴。 igh EtherC

    2024年04月29日
    瀏覽(322)
  • IGH(EtherCAT開(kāi)源主站)移植到beaglebone black(AM3358)開(kāi)發(fā)板上

    IGH(EtherCAT開(kāi)源主站)移植到beaglebone black(AM3358)開(kāi)發(fā)板上

    本文是在已經(jīng)打上x(chóng)enomai補(bǔ)丁的linux-3.8.13-bone86內(nèi)核源碼上進(jìn)行的,參看使用xenomai與linux內(nèi)核源碼交叉編譯,移植到beaglebone black(AM3358)開(kāi)發(fā)板上 igh軟件下載地址: IgH EtherCAT Master for Linux (etherlab.org) 將打入xenomai補(bǔ)丁,寫(xiě)入sd卡的系統(tǒng)的sd卡掛載(插入電腦,自動(dòng)掛載)到ubuntu系統(tǒng)

    2024年02月11日
    瀏覽(23)
  • 【】淺談EtherCAT主站EOE(上)-EOE網(wǎng)絡(luò)

    版權(quán)聲明:本文為本文為博主原創(chuàng)文章,未經(jīng)本人同意,禁止轉(zhuǎn)載。如有問(wèn)題,歡迎指正。博客地址:https://www.cnblogs.com/wsg1100/ 目錄 一、EoE ethercat工作圖示 二、EoE服務(wù)規(guī)范 EtherCAT主站如何提供EoE服務(wù)? 三、EoE網(wǎng)絡(luò) EOE網(wǎng)絡(luò) 這篇文章的標(biāo)題雖然是關(guān)于EtherCAT EOE,但其實(shí)主要內(nèi)

    2024年02月06日
    瀏覽(19)
  • Ethercat學(xué)習(xí)-從站FOE固件更新(TwinCAT主站)

    Ethercat學(xué)習(xí)-從站FOE固件更新(TwinCAT主站)

    簡(jiǎn)介 FOE(File Access over Ethercat),用于節(jié)點(diǎn)之間的文件傳輸。協(xié)議類(lèi)似于TFTP協(xié)議,感覺(jué)和TFTP協(xié)議沒(méi)有太大的區(qū)別,只是一個(gè)是UDP傳輸,一個(gè)是Ethercat傳輸。從機(jī)在通過(guò)FOE進(jìn)行固件更新的時(shí)候,作為服務(wù)端,主機(jī)作為客戶端,有主機(jī)發(fā)起固件的上傳和下載 協(xié)議說(shuō)明 FOE幀格式: 目

    2024年02月10日
    瀏覽(134)
  • EtherCAT主站寫(xiě)從站EEPROM抓包分析

    EtherCAT主站寫(xiě)從站EEPROM抓包分析

    本文主站設(shè)置從站1字地址為0的EEPROM數(shù)據(jù)為0x3C00(設(shè)置完畢后請(qǐng)還原字0的EEPROM數(shù)據(jù)),使用Wireshark抓取到的報(bào)文如下: 這一階段涉及的寄存器包括0x0500、0x0501,有關(guān)這2個(gè)寄存器的描述如下: 將EEPROM訪問(wèn)控制權(quán)設(shè)置為主站的操作分為2步: (1)強(qiáng)制PDI釋放EEPROM訪問(wèn)控制權(quán) 主站

    2024年02月05日
    瀏覽(22)
  • 小米便簽開(kāi)源項(xiàng)目本地環(huán)境搭建

    小米便簽開(kāi)源項(xiàng)目本地環(huán)境搭建

    基于Android Studio、和Gradle 的小米便簽配置和安裝 一、Android Studio的中文社區(qū)(官網(wǎng))下載最新的Android Studio 點(diǎn)擊開(kāi)始傳送 http://www.android-studio.org/ 可參考下文安裝配置Android StudioAndroid Studio 和 SDK 下載、安裝和環(huán)境變量配置_siwuxie095的博客-CSDN博客_androidstudio配置sdk 根據(jù)指引把

    2023年04月25日
    瀏覽(68)
  • MIT Cheetah開(kāi)源代碼仿真環(huán)境搭建

    MIT Cheetah開(kāi)源代碼仿真環(huán)境搭建

    參考文章:長(zhǎng)樂(lè)未央https://zhuanlan.zhihu.com/p/537013183 電腦系統(tǒng):Ubuntu18.04 ROS版本: ROS Melodic 首先更新一下 安裝依賴項(xiàng) 首先是QT5.14.2,下載地址友情鏈接:QT5.14.2 下載完成后選中下載的QT5文件,右鍵點(diǎn)擊屬性,點(diǎn)擊權(quán)限,勾選允許作為程序執(zhí)行文件,如下圖所示: 然后在該文件

    2023年04月17日
    瀏覽(28)
  • 開(kāi)源元數(shù)據(jù)管理平臺(tái)OpenMetadata開(kāi)發(fā)環(huán)境搭建

    開(kāi)源的元數(shù)據(jù)管理平臺(tái)很多。開(kāi)源元數(shù)據(jù)管理平臺(tái)是一種用于收集、存儲(chǔ)和管理數(shù)據(jù)的工具,它們提供了一種可擴(kuò)展的方式來(lái)組織和維護(hù)數(shù)據(jù)的元數(shù)據(jù)信息。以下是一些常見(jiàn)的開(kāi)源元數(shù)據(jù)管理平臺(tái): Apache Atlas:Apache Atlas是一個(gè)開(kāi)源的大數(shù)據(jù)元數(shù)據(jù)管理和數(shù)據(jù)治理平臺(tái),旨在幫

    2024年02月20日
    瀏覽(22)
  • 短視頻矩陣源碼開(kāi)源搭建--基于PHP語(yǔ)言

    短視頻矩陣源碼開(kāi)源搭建--基于PHP語(yǔ)言

    短視頻矩陣系統(tǒng)是一種基于云計(jì)算和大數(shù)據(jù)技術(shù)的智能化視頻分發(fā)系統(tǒng),旨在為用戶提供個(gè)性化的短視頻推薦和播放服務(wù)。該系統(tǒng)通過(guò)對(duì)用戶行為數(shù)據(jù)和視頻內(nèi)容進(jìn)行深度分析和計(jì)算,實(shí)現(xiàn)了智能化的推薦算法和視頻分發(fā)機(jī)制,使用戶能夠快速、便捷地找到自己喜歡的視頻并

    2024年02月21日
    瀏覽(16)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包