999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

工業現場CAN總線集線器開發?

2021-06-02 07:30:34龔元明
計算機與數字工程 2021年5期
關鍵詞:信號

周 琦 龔元明

(上海工程技術大學汽車工程學院 上海 201620)

1 引言

在智能制造領域,總線集線器是適用于工業控制最底層的簡單傳感器和執行器的工業通信接口,能采集多路數字量模擬量信號[1]。總線集線器支持多從站和主站點對點通信,各從站之間互不影響,具有良好的通信穩定性,同時具有智能可配置性。總線集線器使工廠自動化設備中典型應用的傳感器網絡變得更高效和智能化,能夠為工業傳感器制造商在工業4.0時代提供支持[2]。

CAN總線采用差分信號傳輸,抗干擾能力強,最高傳輸速率可達1Mbps,最大通信距離可達10km,可以大大降低信息傳輸延時,適用于對通信時序較為嚴格的控制系統[3]。考慮到CAN總線啟用成本低、可靠性高的優點,在工業自動化電子領域中廣泛應用,因此基于CAN總線協議對集線器開發設計。

2 系統總體設計

CAN總線集線器以英飛凌XC2234L為微控制器,通過底層驅動對GPIO接口施密特觸發器的開關切換,可配置為數字量/模擬量輸入通道。設置M8物理接口,總共可采集16路傳感器信號,通過自定義協議將傳感器信號打包成CAN報文格式,由GPT單元對外定時發送。CAN總線集線器通過USB-CAN和上位機連接,基于CCP協議對Flash區的CAN參數進行標定,以適應不同工作環境。集線器總體設計結構如圖1所示。

圖1 集線器總體設計結構

為了滿足智能制造領域多從站和主站通信的要求,可配置各集線器不同CANID作為從站,通過CAN轉以太網網關和主站PLC連接。在實際應用中以西門子S7-1200 PLC作為主站,采用泗博自動化公司的CAN轉Profinet網關進行主從連接[4]。CAN總線集線器采集工業現場電壓信號、電流信號、溫度信號等參數,經網關協議轉換后傳入S7-1200PLC,整體系統如圖2所示。

圖2 主站和多從站系統結構圖

3 硬件設計

本CAN總線集線器基于英飛凌XC2234L單片機設計實現。XC2234L是16位微控制器,包含MultiCAN接口、通用輸入/輸出端口(GPIO)以及16路A/D轉換通道,Flash閃存容量可達320KB[5],完全滿足本設計要求。硬件設計主要包括電源模塊、CAN通信模塊和信號采集模塊。

3.1 電源模塊

圖3所示為電源模塊電路原理圖。為防止電源正負極接反時電路導通,在電源輸入端加入了二極管,保護后級電路。由于硬件系統最大驅動電壓為5V,采用開關型降壓穩壓器LM2576-5,配合二極管1N5819,穩定輸出5V電壓。為主控制器和CAN收發器模塊提供工作電壓。

圖3 電源模塊原理圖

3.2 CAN通信電路

CAN通信模塊主要包括CAN控制器、CAN收發器、終端電阻和防靜電保護電路。英飛凌XC2234L微控制器集成了兩路MultiCAN接口,支持CAN V2.0B規范。CAN收發器采用英飛凌TLE6250GV33,數據傳輸速率高達1MBaud,可以承受工業現場惡劣條件。TxD引腳和RxD引腳分別實現CAN報文的發送和接收,CANH引腳和CANL引腳實現差分信號傳輸,中間嵌入120歐姆終端電阻,增強抗干擾能力。CAN通信電路如圖4所示。

圖4 CAN通信模塊原理圖

3.3 信號采集電路

信號采集分為開關量信號采集和模擬量信號采集,總共16路通道。圖5所示為信號采集模塊原理圖。Vset為16路通道公共端,當5K電阻R39接入電路時為開關量信號采集模式,斷開開關S1則為模擬量信號采集模式。運算放大器MCP6004對模擬信號放大后輸入到單片機。模擬電壓輸入范圍為0~5V,微控制器器采用12位AD精度,對應AD值為0~4095。采用肖特基二極管BAT54s把電壓鉗在0~5V,避免輸入電壓過大而燒毀電路[6]。在XC2234L的GPIO引腳接入雙色共陰LED管,可有效觀測數字量采集狀況。

4 軟件設計

底層硬件驅動采用Dave軟件配置[7],集成開發環境采用Tasking C166編譯器。Dave對驅動層的配置可直接生成代碼,再通過Tasking加載生成代碼實現應用層功能。軟件設計主要包括通信協議設計和參數標定設計。

圖5 信號采集模塊原理圖

4.1 通信協議設計

本集線器采用M8接口,每個接口可采集兩路信號,共16路輸入信號。CAN報文有效字節為8個,第一字節為奇數端口數字量信號,第二字節為偶數端口數字量信號,第三字節為模擬量信號高八位,第四字節為模擬量信號低八位,第五字節為模擬量通道號,第六、七字節分別為A/D轉換通道總數和數字量通道總數。

表1 CAN通信協議示例

奇數端口和偶數端口以0~15依次命名,奇數端口為0~7,偶數端口為8~15,對應整型二進制數的16位。報文ID號為0x281,表1對該通信協議做示例說明。Byte0值為0x84,對應二進制10000100,表示奇數端口0和5為高電平。Byte1值為0x24,對應二進制00100100,表示偶數端口10和端口13為高電平。Byte2和Byte3合并后為16進制0x0418,換算后表示傳感器輸入模擬電壓為1.28V。Byte4值為0x06,表示第六路模擬量通道。Byte6和Byte7為0x08,表示總共啟動8路A/D轉換通道和8路數字量通道。

底層驅動對XC2234L通用輸入/輸出端口的數字輸入禁用寄存器Px_DIDIS配置,主要為施密特觸發器開關狀態切換[8],0為使能數字輸入級,1為禁用數字輸入級。AD轉換采用XC2234L順序請求源處理模式,通過調用ADC0_vStartSeq0ReqChNum()函數啟動AD轉換通道,由ADC0_uwGetResult?Data()函數把AD值存放在結果寄存器中,再由CAN_Transmiter()函數發出。該模式根據啟用的AD通道號依次輪詢,通過CAN報文的形式循環發送。

4.2 參數標定設計

為了使集線器靈活應用于工業現場交互環境,可配置CAN總線波特率、幀類型、報文ID、發送間隔時間等參數[9],并可以根據實際使用需求自由配置數字量/模擬量通道。

參數標定采用CCP協議Polling問答模式[10]。首先在DAVE中配置接收節點M0和發送節點M1,M0節點ID設為0x001,M1節點ID設為0x281。在CAN中斷中調用函數ccpCommand((CCP_BYTEP?TR)&M0.ubData[0])。標定參數Flash區起始地址設定為0x00C00200,RAM區映射地址設定如表2所示。

表2 RAM區參數地址分配表

一旦接收到0x001報文,立即觸發CAN中斷。用Connect(0x01)命令建立連接,然后SET_MTA(0x02)命令設置標定參數地址,DNLOAD(0x03)命令下載參數標定值[11],對各個參數進行解析。DIS?CONNECT(0x07)命令結束標定流程。通過調用CCPFlash函數庫,主要為ROM區標定參數到RAM區地址映射,扇區擦除,Flash區參數寫入,以實現標定參數掉電不丟失。其中,CAN波特率通過解析,對XC2234L節點位時序寄存器CAN_NBTROL進行修改;CAN ID對應報文對象仲裁寄存器CAN_MOAR1H和CAN_MOAR1L;發送間隔由RTC中斷控制,定時發送CAN報文。數字量/模擬量通道分別對應0x01和0x02,通過解析A/DPort_State參數,啟動相應數字輸入通道和A/D轉換通道。標定流程如圖6所示。

5 上位機標定軟件設計

上位機基于QT Creator開發,通過周立功USB-CAN實現智能分線器和上位機的連接,上位機由CAN接口函數庫開發[12]。用戶交互主要實現實時監測CAN報文以及標定功能。接口函數調用周立功usb-can二次開發函數庫,主要用到以下函數:

VCI_StartCAN(m_devtype,m_devind,m_can?num)//啟動USB-CAN

VCI_GetReceiveNum(m_devtype,m_devind,m_cannum;//獲取指定緩沖區數據

VCI_Receive(m_devtype,m_devind,m_can?num,frameinfo,50,200);//CAN數據接收

VCI_Transmit(m_devtype,m_devind,m_can?num,&frameinfo,1);//CAN數據發送

圖6 下位機標定流程

啟動USB-CAN時,首先初始化CAN配置,包括幀過濾驗收碼、屏蔽碼、濾波方式以及波特率定時器[13]。然后讀取設備信息、設置設備參數、清除緩沖區。由于接收到的CAN報文會預先存入緩沖區,所以VCI_GetReceiveNum函數主要用途是配合VCI_Receive函數使用,先檢測緩沖區是否有未讀幀數,再接收,避免了系統一直調用VCI_Receive,節省了PC系統資源,提高運行效率。標定協議按照下位機CCP協議編寫,每條報文格式參照VCI_CAN_OBJ結構體,由于下位機接收節點ID固定,所以只需要定義VCI_CAN_OBJ數組的首指針和每條報文的有效字節。參照下位機標定設計,主要步驟為建立連接、設置RAM區參數標定地址、寫入數據和斷開連接,由VCI_Transmit函數依次發送CAN報文命令。主要步驟如圖7所示。

上位機主界面主要是建立和集線器的連接,觀察集線器CAN報文的收發情況。子界面為標定界面,可自由配置集線器CAN總線各參數。標定界面如圖8所示。

圖7 上位機操作流程

圖8 集線器CAN參數標定界面

6 西門子PLC編程及可靠性測試

PLC作為主站,經過CAN轉Profinet網關實現和智能集線器從站之間的通信[14]。網關配置軟件為泗博自動化公司的TC-123,該軟件可完成TCO-151的配置,包括設備IP地址,子網掩碼,網關地址和設備名稱,CAN通信波特率,網關節點號,PDO(過程傳輸對象)訪問條目等參數。網關配置如圖9所示。

圖9 TCO-151網關配置

西門子S7-1200PLC程序由博圖V13編寫,首先加載第三方網關GSD文件完成硬件組態[15],完成輸入/輸出8個字節的映射地址。圖10梯形圖為一組開關量校驗程序,IN1和IN2進行與運算,當結果不為0時,線圈閉合。按照CAN通信協議編寫共16組校驗程序。對于模擬量的監控可觀察報文接收數組的變化。

圖10 開關量校驗程序

由上位機標定軟件配置前八個通道為模擬量輸入,后八個通道為數字量輸入。給數字通道輸入5v電壓,模擬通道輸入0~5V可調電壓,觀察AD值變化。當給第七通道輸入2.4V電壓時,對應AD值應為0x7e2。第八通道輸入開關量信號。打開博圖軟件監控功能,圖10開關量校驗程序中線圈Q1.0閉合,可驗證開關量輸入準確無誤。報文接收數組如圖11所示,接收報文為00 80 07 e2 07 00 08 08,符合預期結果。

圖11 報文接收數組窗口

7 結語

本文利用英飛凌XC2234L單片機設計開發了CAN總線集線器,對硬件電路、底層軟件和上位機標定界面、西門子PLC編程做了詳細介紹。通過實驗模擬和測試,實現了對傳感器信號進行準確采集和在線標定CAN節點等功能,實時性好,運行平穩,在工業自動化領域有著廣闊的應用前景。

猜你喜歡
信號
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
7個信號,警惕寶寶要感冒
媽媽寶寶(2019年10期)2019-10-26 02:45:34
孩子停止長個的信號
《鐵道通信信號》訂閱單
基于FPGA的多功能信號發生器的設計
電子制作(2018年11期)2018-08-04 03:25:42
基于Arduino的聯鎖信號控制接口研究
《鐵道通信信號》訂閱單
基于LabVIEW的力加載信號采集與PID控制
Kisspeptin/GPR54信號通路促使性早熟形成的作用觀察
主站蜘蛛池模板: 国产欧美网站| 麻豆国产精品一二三在线观看| 中文字幕人成乱码熟女免费| 婷婷色中文网| 全免费a级毛片免费看不卡| 亚洲bt欧美bt精品| 国产精品福利一区二区久久| 亚洲日韩AV无码一区二区三区人 | 成人免费网站在线观看| 国产一级在线观看www色 | 国产在线视频自拍| 国产精品大尺度尺度视频| 亚洲第一香蕉视频| 久久狠狠色噜噜狠狠狠狠97视色 | 亚洲国产av无码综合原创国产| 亚洲成人网在线播放| 又粗又硬又大又爽免费视频播放| 国产在线视频二区| 一区二区三区在线不卡免费| 综合色88| a在线观看免费| 日本免费高清一区| 91小视频版在线观看www| 19国产精品麻豆免费观看| 亚洲精品成人片在线观看| 九九精品在线观看| 久久精品无码专区免费| 91网红精品在线观看| 国内精品视频在线| 色噜噜狠狠狠综合曰曰曰| 国产精品jizz在线观看软件| www.91在线播放| 久久久久久尹人网香蕉| 91福利片| 亚洲精品成人福利在线电影| 国产菊爆视频在线观看| 精品国产www| 国产正在播放| 日韩精品一区二区三区免费| 97在线免费| 久久久久亚洲av成人网人人软件| 日韩视频精品在线| 日韩区欧美区| 美女无遮挡拍拍拍免费视频| 国产伦片中文免费观看| 欧美亚洲日韩不卡在线在线观看| 在线色国产| 青青操视频在线| 久久精品这里只有精99品| 2018日日摸夜夜添狠狠躁| 久久人人97超碰人人澡爱香蕉 | 精品视频一区二区三区在线播| 狠狠色成人综合首页| 日韩一级二级三级| 免费国产不卡午夜福在线观看| 亚洲熟女中文字幕男人总站| 福利在线不卡| 精品国产自在在线在线观看| 老司机午夜精品网站在线观看 | 香蕉视频在线观看www| 色吊丝av中文字幕| 亚洲精品成人7777在线观看| 97视频免费看| 亚洲视频免费播放| 波多野结衣无码AV在线| 亚洲AV无码久久天堂| 欧美日韩在线亚洲国产人| 高清乱码精品福利在线视频| 啊嗯不日本网站| 亚洲国产第一区二区香蕉| 国产成人精品高清不卡在线 | 五月天久久综合国产一区二区| 在线日本国产成人免费的| AⅤ色综合久久天堂AV色综合 | A级毛片无码久久精品免费| 欧美在线一二区| 精品国产污污免费网站| 久久精品国产免费观看频道| 亚洲香蕉久久| 亚洲侵犯无码网址在线观看| 久久久精品无码一二三区| 日本一区二区不卡视频|