0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

利用VHDL語(yǔ)言和BiSS協(xié)議實(shí)現(xiàn)光電編碼器的設(shè)計(jì)

電子設(shè)計(jì) ? 來(lái)源:郭婷 ? 作者:電子設(shè)計(jì) ? 2019-04-26 08:40 ? 次閱讀

引言

位置編碼器是工業(yè)自動(dòng)控制中重要的反饋環(huán)節(jié)執(zhí)行元件。位置編碼器按工作方式分為絕對(duì)式和增量式兩種。絕對(duì)位置式編碼器的數(shù)據(jù)輸出一般采用串行通信的方式。位置編碼器的通信速度,在一定程度上影響閉環(huán)系統(tǒng)的時(shí)間常數(shù)。德國(guó)IC-Haus公司提出的BiSS(Bidirectional Synchronous Serial)協(xié)議是一種新型的可自由使用的開(kāi)放式同步串行通信協(xié)議,使用該協(xié)議通信波特率可以達(dá)到10Mbps,達(dá)到RS422接口總線的波特率上限,是其它一些同類(lèi)常用串行通信協(xié)議(如SSI,EnDat,Hiperface,起止式異步協(xié)議)的5倍以上。

注:起止式指一種常用的異步串行通信協(xié)議,每幀數(shù)據(jù)包括1位起始位、5-8位數(shù)據(jù)位、1(或0)位奇偶校驗(yàn)位、1(或1.5或2)位停止位。

利用VHDL語(yǔ)言和BiSS協(xié)議實(shí)現(xiàn)光電編碼器的設(shè)計(jì)

由表1中可知,BiSS協(xié)議通信波特率遠(yuǎn)遠(yuǎn)高出其它協(xié)議,總線連接方式、報(bào)警位、協(xié)議長(zhǎng)度可調(diào)整,工業(yè)應(yīng)用靈活性好,無(wú)協(xié)議產(chǎn)權(quán)成本,全數(shù)字接口無(wú)模擬器件成本??梢?jiàn),在通信速度、產(chǎn)品適應(yīng)性、成本等綜合方面,BiSS協(xié)議具有很好的發(fā)展前景。

1、BiSS協(xié)議

BiSS協(xié)議包括讀數(shù)模式(sensor mode)和寄存器模式(register mode)兩部分的內(nèi)容。如圖1、圖2所示,在點(diǎn)對(duì)點(diǎn)或總線連接下由主機(jī)發(fā)送MA(master)信號(hào),編碼器返回SL(slave)信號(hào)。SL的返回信號(hào)是和MA的時(shí)鐘同步的。在寄存器模式下,MA在提供時(shí)鐘的同時(shí),需要攜帶寄存器地址、寄存器值等信息,這是通過(guò)不同的占空比實(shí)現(xiàn)的:當(dāng)占空比在10%~30%(文中稱(chēng)為低占空比)時(shí),同時(shí)表示數(shù)據(jù)0;當(dāng)占空比在70%~90%(文中稱(chēng)為高占空比)時(shí),同時(shí)表示數(shù)據(jù)1。

1.1 讀數(shù)模式

在讀數(shù)模式下,通信波特率可達(dá)到10Mbps,MA和SL的幀結(jié)構(gòu)如圖3所示。其中,MA的REQ(請(qǐng)求)位的①~②時(shí)間長(zhǎng)度要小于timeoutSENS(可編程的時(shí)間參數(shù)),編碼器識(shí)別為讀數(shù)模式。在MA的每一個(gè)時(shí)鐘上升沿,SL返回相應(yīng)的數(shù)據(jù)位。

實(shí)際應(yīng)用中,長(zhǎng)距離的導(dǎo)線傳輸、接口電平轉(zhuǎn)換芯片等帶來(lái)的總線延時(shí)(line delay),會(huì)有SL2的延遲響應(yīng)波形。由此可估計(jì)總線延時(shí)為③~⑧時(shí)間長(zhǎng)度,即MA時(shí)鐘上升沿和SL響應(yīng)位下降沿的時(shí)間長(zhǎng)度,相應(yīng)地延遲采樣時(shí)刻,使通信不受總線延時(shí)的影響。

編碼器的位置信號(hào)需要內(nèi)部采集,轉(zhuǎn)換等過(guò)程。當(dāng)編碼器忙不能立刻響應(yīng)主機(jī)的讀數(shù)請(qǐng)求時(shí),延遲響應(yīng)start位,此時(shí)為SL3的波形,數(shù)據(jù)處理帶來(lái)的延時(shí)為④~⑨時(shí)間長(zhǎng)度。

可見(jiàn),在高波特率的通信狀態(tài)下,仍能通過(guò)估計(jì)總線延時(shí)和忙延時(shí),準(zhǔn)確的進(jìn)行數(shù)據(jù)通信。

1.2 寄存器模式

在讀寫(xiě)寄存器模式下,通信波特率相對(duì)較低。文中編碼器的寄存器為EEPROM,正常工作上限波特率為250K。MA的REQ位時(shí)間長(zhǎng)度要大于timeoutSENS,編碼器識(shí)別為寄存器模式。寄存器地址序列為③~④波形(讀寄存器、寫(xiě)寄存器相同),包括3位的ID(編碼器編號(hào))、7位ADR(編碼器地址)、1位WNR(讀寫(xiě)標(biāo)志位)和4位CRC(校驗(yàn)位),同樣使用高低占空比來(lái)實(shí)現(xiàn)時(shí)鐘和數(shù)據(jù)的同時(shí)輸出。

主機(jī)輸出寄存器地址序列后,如果是讀寄存器模式,即寄存器地址序列中的WNR位為0,MA繼續(xù)輸出時(shí)鐘,SL返回寄存器中的數(shù)據(jù)。如果是寫(xiě)寄存器模式,即寄存器地址序列中的WNR位為1,MA則繼續(xù)輸出高低占空比信號(hào),SL返回寫(xiě)入的寄存器值,如該值與發(fā)送的數(shù)據(jù)一致,說(shuō)明寫(xiě)寄存器操作成功。

位置數(shù)據(jù)、寄存器數(shù)據(jù)、寄存器地址后均加有CRC校驗(yàn),保證傳送數(shù)據(jù)的準(zhǔn)確性。對(duì)于總線連接方式,BiSS協(xié)議給出了多編碼器串行連接的讀數(shù)方式和寄存器讀寫(xiě)方式,是上述時(shí)序的組合。

2、通信模塊的軟硬件設(shè)計(jì)

2.1 硬件設(shè)計(jì)

通信模塊基于EP1C12Q240-FPGA設(shè)計(jì),對(duì)Netzer RE252型號(hào)的絕對(duì)位置式光電編碼器進(jìn)行位置讀數(shù),采用點(diǎn)對(duì)點(diǎn)連接,RS422差分總線接口使用MAX3460電平轉(zhuǎn)換芯片。為了提高通信模塊在工業(yè)應(yīng)用中的抗干擾性,接口芯片和FPGA核心模塊之間加入高速光耦HCPL0630進(jìn)行隔離。輸出接口有并行接口、串行通信接口、增量式等,與上位機(jī)通信。

2.2 軟件設(shè)計(jì)

程序在Quartus II軟件[6]環(huán)境下,使用Verilog HDL語(yǔ)言編寫(xiě),采用的是自底向上的編寫(xiě)方式,使用約6000門(mén)資源。底層模塊包括讀數(shù)模塊、讀寫(xiě)寄存器模塊。底層模塊的clk時(shí)鐘由頂層模塊的鎖相環(huán)PLL分頻提供。讀數(shù)模塊或者讀寫(xiě)寄存器模塊在EN置位后,獨(dú)占MA線,發(fā)送與協(xié)議對(duì)應(yīng)的波形,再根據(jù)編碼器返回的SL波形采樣識(shí)別數(shù)據(jù),通過(guò)data總線保存到頂層模塊的數(shù)據(jù)緩沖區(qū)。

頂層模塊主要包括兩個(gè)狀態(tài)機(jī)。讀數(shù)狀態(tài)機(jī)根據(jù)編碼器的工作時(shí)序要求完成寄存器的初始化,然后不斷的讀取編碼器的數(shù)據(jù)保存到數(shù)據(jù)緩沖區(qū)。輸出狀態(tài)機(jī)根據(jù)指定標(biāo)志位從數(shù)據(jù)緩沖區(qū)讀取數(shù)據(jù),控制以并行、串口、增量式的輸出時(shí)序邏輯。

3、實(shí)驗(yàn)結(jié)果及對(duì)比

quartus II中的signalTap邏輯分析儀可以嵌入到FPGA,觀察管腳電平和內(nèi)部變量值。圖7所示為編碼器返回14位數(shù)據(jù)的通信波形。從圖中可見(jiàn),SL的第一個(gè)下降沿即ACK位延遲了約0.65μs,為總線延時(shí)。一個(gè)完整的讀數(shù)操作從-5時(shí)刻開(kāi)始需要約210個(gè)采樣點(diǎn),即4.2μs的時(shí)間(4.2μs=210*1/50 MHz,采樣頻率50MHz)。

利用VHDL語(yǔ)言和BiSS協(xié)議實(shí)現(xiàn)光電編碼器的設(shè)計(jì)

圖8為*AGAWA-TS5667型號(hào)的絕對(duì)式光電位置編碼器返回17位數(shù)據(jù)的通信波形,該編碼器采用起止式異步串行通信協(xié)議,波特率為2.5M。半雙工通信方式下,一個(gè)完整的讀數(shù)操作從0時(shí)刻di請(qǐng)求開(kāi)始,到約868時(shí)刻ro應(yīng)答結(jié)束,需要約30.4μs的時(shí)間(30.4μs=868*1/28.57MHz,采樣頻率28.57MHz)。

利用VHDL語(yǔ)言和BiSS協(xié)議實(shí)現(xiàn)光電編碼器的設(shè)計(jì)

BiSS協(xié)議下的數(shù)據(jù)位數(shù)可調(diào)整,如果把BiSS協(xié)議下的數(shù)據(jù)位數(shù)從14位增加到17位,只需增加3個(gè)時(shí)鐘的時(shí)間長(zhǎng)度,在10Mbps下為0.3秒。

由此得到,在同樣傳輸17位光電編碼器位置數(shù)據(jù)的情況下,起止式異步協(xié)議耗時(shí)30.4μs,而B(niǎo)iSS協(xié)議僅耗時(shí)4.5μs,通信速度提高了6.75倍。

4、結(jié)論

基于BiSS協(xié)議的各方面優(yōu)點(diǎn),目前已有德國(guó)IC-Haus,美國(guó)Danaher,以色列Netzer Precision等130多家公司申請(qǐng)并免費(fèi)使用了BiSS協(xié)議,BiSS協(xié)議得到了越來(lái)越廣泛的應(yīng)用。同時(shí),BiSS與SSI協(xié)議下的接口兼容,方便SSI使用者和廠商系統(tǒng)升級(jí)。綜上所述,BiSS協(xié)議在降低協(xié)議成本、硬件成本,提高通信速度和準(zhǔn)確率等綜合方面,是未來(lái)編碼器用串行通信協(xié)議中一種非常理想的選擇。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1630

    文章

    21776

    瀏覽量

    604677
  • 編碼器
    +關(guān)注

    關(guān)注

    45

    文章

    3655

    瀏覽量

    134883
  • vhdl
    +關(guān)注

    關(guān)注

    30

    文章

    817

    瀏覽量

    128210
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    5V BiSS 位置編碼器接口參考設(shè)計(jì)

    `描述該 TI 設(shè)計(jì)基于 BiSS 標(biāo)準(zhǔn)實(shí)現(xiàn)適用于位置或旋轉(zhuǎn)編碼器的硬件接口解決方案。它既支持 BiSS 點(diǎn)對(duì)點(diǎn)配置又支持 BiSS 總線配
    發(fā)表于 04-29 11:27

    5V BiSS位置編碼器硬件接口解決方案

    描述該 TI 設(shè)計(jì)基于 BiSS 標(biāo)準(zhǔn)實(shí)現(xiàn)適用于位置或旋轉(zhuǎn)編碼器的硬件接口解決方案。它既支持 BiSS 點(diǎn)對(duì)點(diǎn)配置又支持 BiSS 總線配置
    發(fā)表于 12-04 14:24

    基于FPGA的BISS-C協(xié)議編碼器的解碼實(shí)現(xiàn)

    有沒(méi)有大佬弄過(guò) 基于FPGA的BISS-C協(xié)議編碼器解碼,想問(wèn)一下該怎么搞,有償,或者有沒(méi)有現(xiàn)成的產(chǎn)品可以幫忙解碼?
    發(fā)表于 05-23 17:17

    開(kāi)源硬件-TIDA-00175-5V BiSS 位置編碼器接口 PCB layout 設(shè)計(jì)

    該參考設(shè)計(jì)基于 BiSS 標(biāo)準(zhǔn)為位置或旋轉(zhuǎn)編碼器實(shí)現(xiàn)了硬件接口。它支持 BiSS 點(diǎn)對(duì)點(diǎn)和 BiSS 總線配置。其構(gòu)建塊包括采用創(chuàng)新智能電子
    發(fā)表于 05-28 11:50 ?38次下載
    開(kāi)源硬件-TIDA-00175-5V <b class='flag-5'>BiSS</b> 位置<b class='flag-5'>編碼器</b>接口 PCB layout 設(shè)計(jì)

    什么是光電編碼器?光電編碼器原理

    什么是光電編碼器? 工作原理:當(dāng)光電編碼器的軸轉(zhuǎn)動(dòng)時(shí)A、B兩根線都產(chǎn)生脈沖輸出,A、B
    發(fā)表于 04-06 15:04 ?4825次閱讀
    什么是<b class='flag-5'>光電</b><b class='flag-5'>編碼器</b>?<b class='flag-5'>光電</b><b class='flag-5'>編碼器</b>原理

    光電編碼器原理及應(yīng)用電路

    光電編碼器原理及應(yīng)用電路 1.光電編碼器原理
    發(fā)表于 09-26 17:05 ?1.1w次閱讀

    FKC光電編碼器

    FKC光電編碼器  FKC光電編碼器產(chǎn)品參數(shù)/介紹:
    發(fā)表于 10-30 07:55 ?1185次閱讀
    FKC<b class='flag-5'>光電</b><b class='flag-5'>編碼器</b>

    光電編碼器簡(jiǎn)介、分類(lèi)及應(yīng)用

    光電編碼器簡(jiǎn)介、分類(lèi)及應(yīng)用 一、光電編碼器簡(jiǎn)介
    發(fā)表于 01-11 08:40 ?5563次閱讀

    光電編碼器,光電編碼器的工作原理

    光電編碼器,光電編碼器的工作原理 光電編碼器,是一種通過(guò)
    發(fā)表于 03-02 14:40 ?9066次閱讀

    光電編碼器,光電編碼器是什么意思

    光電編碼器,光電編碼器是什么意思 光電編碼器光電
    發(fā)表于 03-08 15:20 ?1528次閱讀

    光電編碼器原理結(jié)構(gòu)圖

    光電編碼器原理結(jié)構(gòu)圖 增量式光電旋轉(zhuǎn)編碼器???  所謂編碼器即是將某種物理量轉(zhuǎn)換為數(shù)字格式的裝置。運(yùn)動(dòng)控制系統(tǒng)中的
    發(fā)表于 03-08 15:24 ?1.6w次閱讀

    詳解雙向/串行/同步(BiSS)位置編碼器的接口

    在本文對(duì)雙向/串行/同步(BiSS)位置編碼器的接口進(jìn)行講解。 BiSS是來(lái)自iC-Haus公司的開(kāi)源協(xié)議。它定義了適用于致動(dòng)和傳感
    發(fā)表于 11-17 01:55 ?2w次閱讀
    詳解雙向/串行/同步(<b class='flag-5'>BiSS</b>)位置<b class='flag-5'>編碼器</b>的接口

    光電編碼器型號(hào)含義_光電編碼器應(yīng)用實(shí)例

    本文主要闡述了光電編碼器型號(hào)含義及光電編碼器應(yīng)用實(shí)例。
    的頭像 發(fā)表于 11-06 11:21 ?1.8w次閱讀
    <b class='flag-5'>光電</b><b class='flag-5'>編碼器</b>型號(hào)含義_<b class='flag-5'>光電</b><b class='flag-5'>編碼器</b>應(yīng)用實(shí)例

    磁性編碼器光電編碼器的比較

    伺服電機(jī)編碼器是一種關(guān)鍵的反饋裝置,用于測(cè)量和控制電機(jī)的轉(zhuǎn)速和位置。在選擇伺服電機(jī)編碼器時(shí),常常面臨一個(gè)選擇:使用磁電編碼器還是光電編碼器。
    的頭像 發(fā)表于 01-18 10:29 ?3344次閱讀

    磁電編碼器光電編碼器的區(qū)別

    磁電編碼器光電編碼器是兩種不同類(lèi)型的編碼器,它們?cè)谠?、結(jié)構(gòu)、性能和應(yīng)用領(lǐng)域上都有所不同。 磁電編碼器
    的頭像 發(fā)表于 10-12 09:54 ?1468次閱讀