找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
樓主: eagler8
打印 上一主題 下一主題
收起左側(cè)

【Arduino】108種傳感器模塊系列實驗(資料+代碼+圖形+仿真)

  [復制鏈接]
641#
ID:513258 發(fā)表于 2019-6-27 18:16 | 只看該作者

回復

使用道具 舉報

642#
ID:513258 發(fā)表于 2019-6-27 18:18 | 只看該作者

回復

使用道具 舉報

643#
ID:513258 發(fā)表于 2019-6-27 18:24 | 只看該作者
用手觸摸DS18B20,溫度升高



回復

使用道具 舉報

644#
ID:513258 發(fā)表于 2019-6-27 19:05 | 只看該作者

回復

使用道具 舉報

645#
ID:513258 發(fā)表于 2019-6-27 19:06 | 只看該作者

回復

使用道具 舉報

646#
ID:513258 發(fā)表于 2019-6-27 19:26 | 只看該作者

回復

使用道具 舉報

647#
ID:513258 發(fā)表于 2019-6-27 19:27 | 只看該作者

回復

使用道具 舉報

648#
ID:513258 發(fā)表于 2019-6-28 06:48 | 只看該作者
實驗四十:360度旋轉(zhuǎn)增量編碼器模塊(KY-040)

EC11旋轉(zhuǎn)編碼器
也叫開關(guān)編碼器、旋轉(zhuǎn)編碼器,EC11系列編碼器有直插編碼器、貼片式編碼器、沉板式編碼器、側(cè)插式編碼器,EC11A為直插式編碼器。因廣泛用于車載DVD、車載導航、汽車影音上,也經(jīng)常被人稱為汽車編碼器。EC11編碼器在各類儀器設備中用于頻率、音量、速度、溫度、電壓、菜單選擇、光線強弱等參數(shù)的控制。此款編碼器有做20脈沖20定位點、15脈沖30定位點兩種。調(diào)節(jié)軸有金屬柄和塑膠柄,軸長區(qū)間9-30mm,調(diào)節(jié)軸有全柄、半柄、螺紋柄等類型供您選擇。EC11系列編碼器主要用于汽車電子、多媒體音響、儀器儀表、家用電器、智能家居、計算機周邊、醫(yī)療器械等領域。主要用于頻率調(diào)節(jié)、亮度調(diào)節(jié)、溫度調(diào)節(jié)、音量調(diào)節(jié)的參數(shù)控制等。



回復

使用道具 舉報

649#
ID:513258 發(fā)表于 2019-6-28 07:48 | 只看該作者

回復

使用道具 舉報

650#
ID:513258 發(fā)表于 2019-6-28 07:53 | 只看該作者
技術(shù)參數(shù)
使用溫度范圍:-30℃ to+80℃
保存溫度范圍: -40℃ to+85℃
額定電壓:DC 5V(最高12V)
全回轉(zhuǎn)角度:360度(無止檔點)
回轉(zhuǎn)壽命:30000+200 Cycles
接觸電阻:≤100mΩ
絕緣阻抗:100MΩ 以上
振蕩:≤10mS 按壓(開關(guān)SW)
壽命:20,000±200次.(0.5行程)
          15,000±200次.(1.5行程)




回復

使用道具 舉報

651#
ID:513258 發(fā)表于 2019-6-28 08:39 | 只看該作者

回復

使用道具 舉報

652#
ID:513258 發(fā)表于 2019-6-28 08:46 | 只看該作者
工作原理
增量式編碼器是將位移轉(zhuǎn)換成周期性的電信號,再把這個電信號轉(zhuǎn)變成計數(shù)脈沖,用脈沖的個數(shù)表明位移的巨細。編碼器是把角位移或直線位移轉(zhuǎn)換成電信號的一種設備。依照讀出辦法編碼器能夠分為機械式和非機械式兩種:機械式選用電刷輸出,一電刷觸摸導電區(qū)或絕緣區(qū)來表明代碼的狀況是“1”仍是“0”;非機械式的承受靈敏元件是光敏元件或磁敏元件,選用光敏元件時以透光區(qū)和不透光區(qū)來表明代碼的狀況是“1”仍是“0”。旋轉(zhuǎn)增量式編碼器以轉(zhuǎn)變時輸出脈沖,通過計數(shù)設備來曉得其方位,當編碼器不動或停電時,依托計數(shù)設備的內(nèi)部回憶來記住方位。這樣,當停電后,編碼器不能有任何的移動,當來電作業(yè)時,編碼器輸出脈沖進程中,也不能有攪擾而丟掉脈沖,否則,計數(shù)設備回憶的零點就會偏移,并且這種偏移的量是無從曉得的,只要過錯的出產(chǎn)成果呈現(xiàn)后才曉得。

目前常用的增量式編碼器全部為機械式編碼器,好用且成本低,高端的一般為非機械光電式的。




回復

使用道具 舉報

653#
ID:513258 發(fā)表于 2019-6-28 08:58 | 只看該作者

回復

使用道具 舉報

654#
ID:513258 發(fā)表于 2019-6-28 09:00 | 只看該作者

回復

使用道具 舉報

655#
ID:513258 發(fā)表于 2019-6-28 09:09 | 只看該作者
旋轉(zhuǎn)編碼器
可通過旋轉(zhuǎn)可以計數(shù)正方向和反方向轉(zhuǎn)動過程中輸出脈沖的次數(shù),旋轉(zhuǎn)計數(shù)不像電位計,這種轉(zhuǎn)動計數(shù)是沒有限制的。配合旋轉(zhuǎn)編碼器上的按鍵,可以復位到初始狀態(tài),即從 0 開始計數(shù)。增量編碼器是一種將旋轉(zhuǎn)位移轉(zhuǎn)換為一連串數(shù)字脈沖信號的旋轉(zhuǎn)式傳感器。這些脈沖用來控制角位移。在 Eltra 編碼器中角位移的轉(zhuǎn)換采用了光電掃描原理。讀數(shù)系統(tǒng)以由交替的透光窗口和不透光窗口構(gòu)成的徑向分度盤(碼盤)的旋轉(zhuǎn)為依據(jù),同時被一個紅外光源垂直照射,光把碼盤的圖像投射到接收器表面上。接收器覆蓋著一層衍射光柵,它具有和碼盤相同的窗口寬度。接收器的工作是感受光盤轉(zhuǎn)動所產(chǎn)生的變化,然后將光變化轉(zhuǎn)換成相應的電變化。再使低電平信號上升到較高電平,并產(chǎn)生沒有任何干擾的方形脈沖,這就必須用電子電路來處理。讀數(shù)系統(tǒng)通常采用差分方式,即將兩個波形一樣但相位差為180°的不同信號進行比較,以便提高輸出信號的質(zhì)量和穩(wěn)定性。讀數(shù)是再兩個信號的差別基礎上形成的,從而消除了干擾。




回復

使用道具 舉報

656#
ID:513258 發(fā)表于 2019-6-28 09:18 | 只看該作者
光電編碼器
是一種將位移或角度的模擬信號轉(zhuǎn)換成相應的電脈沖或數(shù)字量角度/角速度檢測元件,具有精度高、體積小、工作可靠、接口數(shù)字化等優(yōu)點。光電編碼器一般由透鏡、光柵盤(碼盤)、光敏元件和放大整形電路組成。工作時,光柵盤與電機同速旋轉(zhuǎn),同時一個帶有辨向狹縫(或狹縫群)的扇形薄片與圓盤平行放置,當光線通過這兩個做相對運動的光柵盤時,光敏元件接受到的光通量也時大時小地連續(xù)變化,經(jīng)放大整形電路處理后變成脈沖信號。通過測量捕捉到的脈沖數(shù)目和頻率即可測出工作軸的轉(zhuǎn)角和轉(zhuǎn)速。而電機的當前轉(zhuǎn)速通過每秒光電編碼器輸出脈沖的個數(shù)可以計算出來。




回復

使用道具 舉報

657#
ID:513258 發(fā)表于 2019-6-28 09:36 | 只看該作者

回復

使用道具 舉報

658#
ID:513258 發(fā)表于 2019-6-28 09:44 | 只看該作者
旋轉(zhuǎn)編碼器模塊
工作電壓:5V
一圈脈沖數(shù):20
旋轉(zhuǎn)編碼器可通過旋轉(zhuǎn)可以計數(shù)正方向和反方向轉(zhuǎn)動過程中輸出脈沖的次數(shù),旋轉(zhuǎn)計數(shù)不像電位計,這種轉(zhuǎn)動計數(shù)是沒有限制的。配合旋轉(zhuǎn)編碼器上的按鍵,可以復位到初始狀態(tài),即從0開始計數(shù)。




回復

使用道具 舉報

659#
ID:513258 發(fā)表于 2019-6-28 10:23 | 只看該作者
我手頭的旋轉(zhuǎn)編碼器模塊有5個引腳,分別是VCC, GND, SW, CLK, DT。其中VCC和GND用來接電源和地,按縮寫SW應該是Switch(開關(guān))、CLK是Clock(時鐘)、DT是Data(數(shù)據(jù))。兩個引腳那一端為普通的按鍵,也就是圓柄按下去的那個按鍵,當做普通按鍵使用即可。右邊三個引腳中間的為GND,兩邊為兩路脈沖信號CLK和DT。旋轉(zhuǎn)編碼器的操作是旋轉(zhuǎn)和按壓轉(zhuǎn)軸,在按下轉(zhuǎn)軸的時候SW引腳的電平會變化,旋轉(zhuǎn)的時候每轉(zhuǎn)動一步CLK和DT的電平是有規(guī)律的變化。




回復

使用道具 舉報

660#
ID:513258 發(fā)表于 2019-6-28 10:43 | 只看該作者
引腳接線
Arduino Uno              旋轉(zhuǎn)傳感器模塊
D2                              CLK(Clock 時鐘)
D3                              DT (Data 數(shù)據(jù))
D4                              SW   (按鈕開關(guān))   
5V                              +VCC   
GND                           GND  



回復

使用道具 舉報

661#
ID:513258 發(fā)表于 2019-6-28 11:01 | 只看該作者
  1. /*
  2. 【Arduino】66種傳感器模塊系列實驗(40)
  3. 實驗四十:360度旋轉(zhuǎn)增量編碼器模塊(KY-040)
  4. */

  5. int CLK = 2;
  6. int DT = 3;
  7. int SW = 4;
  8. const int interrupt0 = 0;
  9. int count = 0;
  10. int lastCLK = 0;

  11. void setup()
  12. {
  13.   pinMode(SW, INPUT);
  14.   digitalWrite(SW, HIGH);
  15.   pinMode(CLK, INPUT);
  16.   pinMode(DT, INPUT);
  17.   attachInterrupt(interrupt0, ClockChanged, CHANGE);
  18.   Serial.begin(9600);
  19. }

  20. void loop()
  21. {
  22.   if (!digitalRead(SW) && count != 0)
  23.   {
  24.     count = 0;
  25.     Serial.print("count:");
  26.     Serial.println(count);
  27.   }
  28. }

  29. void ClockChanged()
  30. {
  31.   int clkValue = digitalRead(CLK);
  32.   int dtValue = digitalRead(DT);
  33.   if (lastCLK != clkValue)
  34.   {
  35.     lastCLK = clkValue;
  36.     count += (clkValue != dtValue ? 1 : -1);
  37.     Serial.print("count:");
  38.     Serial.println(count);
  39.   }
  40. }
復制代碼


回復

使用道具 舉報

662#
ID:513258 發(fā)表于 2019-6-28 11:03 | 只看該作者

回復

使用道具 舉報

663#
ID:513258 發(fā)表于 2019-6-28 11:05 | 只看該作者

回復

使用道具 舉報

664#
ID:513258 發(fā)表于 2019-6-28 11:09 | 只看該作者
按軸清零,順時針轉(zhuǎn)動+1,逆時針旋轉(zhuǎn)-1



回復

使用道具 舉報

665#
ID:513258 發(fā)表于 2019-6-28 11:16 | 只看該作者

回復

使用道具 舉報

666#
ID:513258 發(fā)表于 2019-6-28 11:32 | 只看該作者

回復

使用道具 舉報

667#
ID:513258 發(fā)表于 2019-6-28 11:32 | 只看該作者

回復

使用道具 舉報

668#
ID:513258 發(fā)表于 2019-6-28 11:45 | 只看該作者
  1. /*
  2. 【Arduino】66種傳感器模塊系列實驗(40)
  3. 實驗四十:360度旋轉(zhuǎn)增量編碼器模塊(KY-040)之二
  4. 輸出數(shù)字換屏
  5. */

  6. const int clkPin = 2;
  7. const int dtPin = 3;
  8. const int swPin = 4 ;
  9. int encoderVal = 0;

  10. void setup()
  11. {
  12.   
  13.   pinMode(clkPin, INPUT);
  14.   pinMode(dtPin, INPUT);
  15.   pinMode(swPin, INPUT);
  16.   digitalWrite(swPin, HIGH);
  17.   Serial.begin(9600);
  18. }

  19. void loop()
  20. {
  21.   int change = getEncoderTurn();
  22.   encoderVal = encoderVal + change;
  23.   if (digitalRead(swPin) == LOW)
  24.   {
  25.     encoderVal = 0;
  26.   }
  27.   Serial.println(encoderVal);
  28. }
  29. int getEncoderTurn(void)
  30. {
  31.   static int oldA = HIGH;
  32.   static int oldB = HIGH;
  33.   int result = 0;
  34.   int newA = digitalRead(clkPin);
  35.   int newB = digitalRead(dtPin);
  36.   if (newA != oldA || newB != oldB)
  37.   {

  38.     if (oldA == HIGH && newA == LOW)
  39.     {
  40.       result = (oldB * 2 - 1);
  41.     }
  42.   }
  43.   oldA = newA;
  44.   oldB = newB;
  45.   return result;
  46.   delay(500);
  47. }
復制代碼


回復

使用道具 舉報

669#
ID:513258 發(fā)表于 2019-6-28 11:47 | 只看該作者







回復

使用道具 舉報

670#
ID:513258 發(fā)表于 2019-6-28 12:09 | 只看該作者

回復

使用道具 舉報

671#
ID:513258 發(fā)表于 2019-6-29 13:13 | 只看該作者
實驗四十一:IS0203激光接收管傳感器模塊

IS0203激光接收管
400-1100nm激光接收管,內(nèi)置施密特電路




回復

使用道具 舉報

672#
ID:513258 發(fā)表于 2019-6-29 13:52 | 只看該作者
實驗四十一:IS0203激光接收管傳感器模塊

IS0203激光接收管
400-1100nm激光接收管,內(nèi)置施密特電路




回復

使用道具 舉報

673#
ID:513258 發(fā)表于 2019-6-29 13:52 | 只看該作者

回復

使用道具 舉報

674#
ID:513258 發(fā)表于 2019-6-29 13:58 | 只看該作者

回復

使用道具 舉報

675#
ID:513258 發(fā)表于 2019-6-29 14:01 | 只看該作者

回復

使用道具 舉報

676#
ID:513258 發(fā)表于 2019-6-29 14:03 | 只看該作者

回復

使用道具 舉報

677#
ID:513258 發(fā)表于 2019-6-29 14:06 | 只看該作者

回復

使用道具 舉報

678#
ID:513258 發(fā)表于 2019-6-29 14:12 | 只看該作者

回復

使用道具 舉報

679#
ID:513258 發(fā)表于 2019-6-29 14:14 | 只看該作者

回復

使用道具 舉報

680#
ID:513258 發(fā)表于 2019-6-29 14:17 | 只看該作者

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表