HS-S58P 碼盤計數感測器

HS-S58P 碼盤計數感測器

1、介紹

磁盤計數傳感器採用槽数對射光電傳感器,它由一個紅外發光二極管和一個NPN光電三極管組成,槽数寬度為5.9MM。只要非透明物體通過槽型即可觸發輸出TTL低電平。採用施密特觸發器去抖動脈衝,非常穩定,可用於小車測轉速,測距離等等應用!

2、原理圖

碼盤計數傳感器-HS-S58P 原理圖點擊查看

3、模組參數

引腳名稱

描述

G

GND(電源輸入負極)

V

VCC(電源輸入正極)

S

單片機信號引腳

  • 供電電壓:3.3V / 5V

  • 連接方式:PH2.0 端子線

  • 安裝方式:雙螺絲固定

4、電路板尺寸

5、Arduino IDE示範程序

注意:程式上傳時如果提示庫文件報錯,請先導入庫文件!
Arduino IDE 庁件文件下載及導入教範:
點擊查看

示範程序(UNO開發板):

volatile float Val;
volatile float time;
volatile float Speed;
volatile float Speed1;
volatile float Val1;

void attachInterrupt_fun_CHANGE_2() {
  count();
}

void count() {
  Val = Val + 1;
}

void setup(){
  Serial.begin(9600);
  Val = 0;
  time = 0;
  Speed = 0;
  Speed1 = 0;
  Val1 = 0;
  pinMode(2, INPUT);
  attachInterrupt(digitalPinToInterrupt(2),attachInterrupt_fun_CHANGE_2,CHANGE);
}

void loop(){
  //电机测速:20孔码盘,单位转/分

  String("转速:") + String(Speed);

  time = millis();
  Speed = (Val / 40) / (time / 60000);
  Serial.println(digitalRead(2));

}

6、ESP32 Python 示例(適用於Mixly IDE /米思齊)

開發板選擇 Python ESP32 【ESP32 Generic(4MB)】切換為代碼模式上傳

注意:程式上傳時如果提示庫文件報錯,請先導入庫文件!
米思齊(Mixly)IDE ESP32庫檔案下載及匯入教學:
點擊查看

示例程式(ESP32-Python):

import machine
import time

def attachInterrupt_func(x):
    global val
    val = val + 1
    pass




val = 0
pin2 = machine.Pin(2, machine.Pin.OUT)
pin4 = machine.Pin(4, machine.Pin.OUT)
machine.Pin(12).irq(handler = attachInterrupt_func, trigger = (machine.Pin.IRQ_RISING | machine.Pin.IRQ_FALLING))
pin2.value(1)
pin4.value(1)
t = float(0)
speed = float(0)
while True:
    t = time.ticks_ms()
    speed = (val / 40) / (t / 60000)
    print(speed)

7、米思齊 Mixly 示例程式(圖形化語言)

示範程序(UNO開發板):點擊下載
注意:程式上傳時如果提示庫文件報錯,請先導入庫文件!
米思齊(Mixly)IDE Arduino 圖庫檔案下載及匯入教學:點擊查看

示範程序(ESP32開發板):點擊下載
注意:程式上傳時如果提示庫文件報錯,請先導入庫文件!
米思齊(Mixly)IDE ESP32庫檔案下載及匯入教學:
點擊查看

8、測試環境搭建

Arduino UNO 測試環境搭建

準備配件:

  • HELLO STEM UNO R3 開發板 *1

  • HELLO STEM UNO 擴展板 *1

  • USB type-c 資料線 *1

  • 馬達盤計數傳感器(HS-S58P)*1

  • 電機驅動模組(HS-F04P) *1

  • PH2.0 3P雙頭端子線 *2 或 PH2.0 3P端子轉杜邦線 *2

電路接線圖:

ESP32 測試環境搭建

準備配件:等更新...

電路接線圖:等更新...

9、視頻教學

視頻教學:點擊查看

10、測試結果

Arduino UNO測試結果:

器件連接好線之後,將上述程序燒錄到UNO-R3PRO開發板之後,接通電源。打開串口監視器,當磁盤計數傳感器感測到有衝擊信號時,就可以看到轉速數據。

ESP32 測試結果:

等更新...