加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入

128位高分辨率絕對(duì)編碼器(電路設(shè)計(jì)+代碼)

2017/07/07
63
服務(wù)支持:
技術(shù)交流群

完成交易后在“購買成功”頁面掃碼入群,即可與技術(shù)大咖們分享疑惑和經(jīng)驗(yàn)、收獲成長和認(rèn)同、領(lǐng)取優(yōu)惠和紅包等。

虛擬商品不可退

當(dāng)前內(nèi)容為數(shù)字版權(quán)作品,購買后不支持退換且無法轉(zhuǎn)移使用。

加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論
放大
方塊圖(4)
相關(guān)方案
  • 方案介紹
  • 相關(guān)文件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

這是一個(gè)小的8位灰色碼頭旋轉(zhuǎn)位置傳感器,提供128個(gè)獨(dú)特的位置。它使用單個(gè)編碼器軌道進(jìn)行管理,其中8個(gè)觸點(diǎn)間隔均勻。該“數(shù)字旋鈕”編碼器可用于控制您的arduino項(xiàng)目,它也可以用于壽命有限的運(yùn)動(dòng)控制系統(tǒng)。附件內(nèi)容分享的代碼是針對(duì)Arduino UNO R3開發(fā)的。它應(yīng)該在任何Arduino上工作。該代碼目前支持MCP23008,PCF8574和PCF8574A I2C擴(kuò)展器。

128位高分辨率絕對(duì)編碼器實(shí)物展示:

使用以下地址選擇這些

  • 0x00 - 0x07 MCP23008地址0x20-0x27。(這與較早的庫修訂版向后兼容)
  • 0x20 - 0x27 PCF8574
  • 0x38 - 0x3F PCF8574A

請(qǐng)注意,MCP23008和PCF8574芯片使用相同的i2c地址范圍。許多LCD背包也使用這些芯片之一。在同一總線上混合所有這些時(shí)要小心,以避免重復(fù)地址。為了進(jìn)一步混淆事物,原始I2C地址具有作為讀/寫信號(hào)的最低位,因此一些文檔(如某些PCF8574數(shù)據(jù)表)將參考0x40和0x70,0x20和0x38向左移位一位。


安裝

封閉的示例草圖ACE128test通過任意一個(gè)和I2C背包驅(qū)動(dòng)2x16顯示,或直接從Arduino驅(qū)動(dòng),具體取決于您是否注釋了LCD_I2C宏。

公共方法



用法

請(qǐng)參見ACE128測(cè)試示例。

  • 包括您需要的所有編碼器映射(見下文),以匹配ACE單元的引腳序列。
  • 使用ACE128構(gòu)造函數(shù)聲明所有ACE128對(duì)象。它需要I2C地址和指向編碼器映射的指針??蛇x的第三個(gè)整數(shù)可以取一個(gè)正整數(shù)來顯示在eeprom中存儲(chǔ)零信息的位置。允許三個(gè)字節(jié)。
  • 從setup()調(diào)用每個(gè)ACE128對(duì)象的begin方法。這將使用eeprom設(shè)置或回退將當(dāng)前位置設(shè)置為零。
  • pos()和upos()方法返回相對(duì)于邏輯零位置的位置,而不是由機(jī)械任意位置的編碼器返回的零位置。當(dāng)它滾動(dòng)時(shí),轉(zhuǎn)動(dòng)被存儲(chǔ)以供mpos使用并保存在eeprom中
  • 每循環(huán)一次(),調(diào)用pos(),upos()或mpos()并將值存儲(chǔ)在一個(gè)變量中。訪問i2c總線需要一些周期,所以每次要引用它時(shí)都不要調(diào)用pos()。
  • 有三個(gè)設(shè)置功能
  • setZero() - 將當(dāng)前位置設(shè)置為零(不更新多圈)
  • setZero(int) - 將零點(diǎn)設(shè)置為給定的0-127數(shù)字
  • setMpos(int) - 將當(dāng)前位置設(shè)置為此多圈值

編碼器地圖

該庫帶有各種編碼器映射,可以在ACE和IO擴(kuò)展器之間實(shí)現(xiàn)引腳的不同接線。這些由包含的make_encodermap示例草圖生成。生成自定義編碼器圖:

  • 編輯make_encodermap草圖
  • 更改pinOrder數(shù)組以匹配您的接線
  • 更改pinString以匹配您的接線
  • 將草圖加載到Arduino
  • 將串行監(jiān)視器輸出復(fù)制到ACE128文件夾中的新.h文件。

12345678用于“逆時(shí)針上升”接線,與數(shù)據(jù)表編號(hào)相匹配,建議進(jìn)行面包板測(cè)試。

  • 編碼器原理圖和PCB源文件.zip
    描述:原理圖和PCB源文件,用eagle6.9軟件打開
  • 編碼器源碼等更多資料.zip
    描述:編碼器源碼等更多資料
  • 編碼器數(shù)據(jù)手冊(cè).pdf
    描述:編碼器數(shù)據(jù)手冊(cè)
  • 原文出處.txt
    描述:原文出處

相關(guān)推薦

電子產(chǎn)業(yè)圖譜