搖桿控制云台-ESP32
tags: esp32
搖桿
云台
實驗目的
以搖桿的讀值同步控制伺服馬達。
須注意值要轉換成角度。
伺服馬達
伺服馬達被廣範運在微控板的控制上,幾乎這是學習微控板的基礎
具代表的實驗就是二軸云台,它是以兩個伺服馬達構成平移和上下
運動的裝置,至於SG90這種小型伺服馬達的運作網路上很多資源,
就不一一贅述。
搖桿模組
請參照這篇的實驗—https://esp32-blairan.blogspot.com/2021/04/esp32_28.html
接線圖
POSX-D33
POSY—D32
SERVO_PAN—->D12
SERVO_TIT—->D13
GND
3V3
須匯入ESP32Servo.h
程式碼
#include <ESP32Servo.h>
Servo Pan;
Servo Tit;
#define servoPAN 12
#define servoTIT 13
#define posX 33
#define posY 32
void setup()
{
Serial.begin(115200);
analogSetAttenuation(ADC_11db);
analogSetWidth(10);
Pan.setPeriodHertz(50);
Tit.setPeriodHertz(50);
Pan.attach(servoPAN, 500, 2400);
Tit.attach(servoTIT, 500, 2400);
}
void loop(){
int valx=analogRead(posX);
valx=map(valx, 0, 1023, 0, 180);
Pan.write(valx);
int valy=analogRead(posY);
valy=map(valy, 0, 1023, 0, 180);
Tit.write(valy);
delay(500);
Serial.printf("posX的搖桿值為: %d // posY的搖桿值為: %d\\n",valx, valy);
}