标题: DIY Arduino追光器 [打印本页]

作者: 探索软件    时间: 2019-12-20 19:45
标题: DIY Arduino追光器
DIY Arduino追光器

1.Arduino UNO

2.舵机 x2

3.光敏电阻 x4

4.电阻 x4




代码:

//追光系统
#include <Servo.h>  //载入Servo库
#define InA A0     //定义读取a光敏电阻的模拟口
#define InB A1     //定义读取b光敏电阻的模拟口
#define InC A2     //定义读取c光敏电阻的模拟口
#define InD A3     //定义读取d光敏电阻的模拟口

int valA,valB;     //用于存储两个光敏电阻的数值
int valC,valD;     //用于存储两个光敏电阻的数值   
int angle1 = 90;    //设置初始角度
int range1 = 100;   //设置范围
int angle2 = 45;    //设置初始角度
int range2 = 100;   //设置范围
Servo myServo1;
Servo myServo2;

void setup() {
  myServo1.attach(2);      //定义舵机接口
  myServo1.write(angle1);   //初始化舵机角度为90度
  myServo2.attach(3);      //定义舵机接口
  myServo2.write(angle2);   //初始化舵机角度为90度
  Serial.begin(9600);    //设置串口波特率
}

void loop() {
  valA = analogRead(InA);  //读取A光敏电阻数据
  valB = analogRead(InB);  //读取B光敏电阻数据
  valC = analogRead(InC);  //读取C光敏电阻数据
  valD = analogRead(InD);  //读取D光敏电阻数据
  //正极接光敏,越光数值越大 A大于B,A比B光 A-B为正数 舵机向A方向转
  if(valA-valB > range1){
    angle1 = angle1 + 20;               //角度+1
    angle1 = constrain(angle1,0,180);  //约束输出
    myServo1.write(angle1);            //执行角度
  }
  //A小于B,B比A光 A-B为负数 舵机向B方向转
  else if(valA - valB < -range1){
    angle1 = angle1 - 20;
    angle1 = constrain(angle1,0,180);
    myServo1.write(angle1);   
  }

  //C大于B,C比D光C-D为正数 舵机向C方向转
  if(valC-valD > range2){
    angle2 = angle2 + 20;               //角度+1
    angle2 = constrain(angle2,0,180);  //约束输出
    myServo2.write(angle2);            //执行角度
  }
  //C小于D,D比A光C-D为负数 舵机向D方向转
  else if(valC - valD < -range2){
    angle2 = angle2 - 20;
    angle2 = constrain(angle2,0,180);
    myServo2.write(angle2);   
  }

  //串口输出数据,便于观察工作原理
  Serial.print("A=");
  Serial.print(valA);
  Serial.print("||B=");
  Serial.println(valB);
  Serial.print("Angle1=");
  Serial.println(angle1);
  Serial.print("C=");
  Serial.print(valC);
  Serial.print("||D=");
  Serial.println(valD);
  Serial.print("Angle2=");
  Serial.println(angle2);
  delay(500);  //延时

}
视频:
https://pan.baidu.com/s/1P2RjZ28SErsMA7z8nhWNfw






作者: dongfang08    时间: 2020-4-9 12:21
谢谢分享
作者: xnhtao    时间: 2020-4-26 14:18
从视频上看效果还不够明显
作者: 量子纠缠    时间: 2020-5-11 12:35
有接线图吗,舵机不动啊




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1