本帖最后由 大猫8888 于 2019-12-20 19:23 编辑
喜欢自驾游,走的地方多了就发现车灯的照射角度有限,特别是在山路大角度转弯和大坑照射不到,所以有了用头追的方式控制探照灯的想法
基本想法是用3D打印件支撑两个55克的舵机,控制灯的水平和垂直转动。灯为美国可瑞L2单颗大功率LED,用单片机控制它实现长亮、爆闪、短闪几个挡位
我用arduino编写的程序很初级很简单,姿态控制用的是6050,实际应用时发现三个问题:
1、Arduino 进口UNO,上传程序后控制基本正常,两个舵机都有动作,但是一旦断电再上电,两个舵机只是通电瞬间动一下归位然后就再也没反应了,按复位按钮复位也没用。必须重新烧写一次才有反映,但依然不能断电。我用的是进口原装UNO,不知是什么原因?
2、6050的问题:xy轴基本正常,但Z轴要么没输出,要么就乱跳,换了两块6050都是同样的毛病。网上查了很多资料,6050的应用基本没看到用z轴的。。。不知道有没有熟悉6050的朋友?
3、UNO的pwm输出很不稳定,比如模拟输出200时,灯会象鬼火那样忽悠忽悠的乱闪(没有示波器看不到波形是怎么样的),有没有写过LED控制的朋友?
代码:
1、灯的控制:
void setup(){
pinMode(5, INPUT);
pinMode(4, INPUT);
pinMode(10, OUTPUT);
pinMode(3, INPUT);
}
void loop(){
if (digitalRead(5) == LOW) {
analogWrite(10,255);
delay(50);
analogWrite(10,0);
delay(1000);
} else {
analogWrite(10,0);
}
if (digitalRead(4) == LOW) {
digitalWrite(10,HIGH);
} else {
analogWrite(10,0);
}
if (digitalRead(3) == LOW) {
analogWrite(10,255);
delay(20);
analogWrite(10,0);
delay(50);
} else {
analogWrite(10,0);
}
}
二、姿态控制:
#include<Servo.h>
Servo analogservo;
Servo analogservo2;
#include "Wire.h"
#include "I2Cdev.h"
#include "MPU6050.h"
MPU6050 accelgyro;
int16_t ax, ay, az;
int16_t gx, gy, gz;
int16_t value
int16_t value2;
bool blinkState = false;
void setup() {
analogservo.attach(10);
analogservo2.attach(11);
}
void loop() {
accelgyro.getMotion6(&ax,& ay,& az,& gx,& gy,& gz);
value2=90-az/350;
value=90+ay/350;
analogservo2.write(value2);
analogservo.write(value);
blinkState = !blinkState;
delay(30);
}
其他设计
[现学现卖Arduino实战]一、盲人雷达
http://www.51hei.com/bbs/dpj-175950-1.html
(出处: 单片机论坛)
喜欢自驾游,走的地方多了就发现车灯的照射角度有限,特别是在山路大角度转弯和大坑照射不到,所以有了用头追的方式控制探照灯的想法
基本想法是用3D打印件支撑两个55克的舵机,控制灯的水平和垂直转动。灯为美国可瑞L2单颗大功率LED,用单片机控制它实现长亮、爆闪、短闪几个挡位
我用arduino编写的程序很初级很简单,姿态控制用的是6050,实际应用时发现三个问题:
1、Arduino 进口UNO,上传程序后控制基本正常,两个舵机都有动作,但是一旦断电再上电,两个舵机只是通电瞬间动一下归位然后就再也没反应了,按复位按钮复位也没用。必须重新烧写一次才有反映,但依然不能断电。我用的是进口原装UNO,不知是什么原因?
2、6050的问题:xy轴基本正常,但Z轴要么没输出,要么就乱跳,换了两块6050都是同样的毛病。网上查了很多资料,6050的应用基本没看到用z轴的。。。不知道有没有熟悉6050的朋友?
3、UNO的pwm输出很不稳定,比如模拟输出200时,灯会象鬼火那样忽悠忽悠的乱闪(没有示波器看不到波形是怎么样的),有没有写过LED控制的朋友?
代码:
1、灯的控制:
void setup(){
pinMode(5, INPUT);
pinMode(4, INPUT);
pinMode(10, OUTPUT);
pinMode(3, INPUT);
}
void loop(){
if (digitalRead(5) == LOW) {
analogWrite(10,255);
delay(50);
analogWrite(10,0);
delay(1000);
} else {
analogWrite(10,0);
}
if (digitalRead(4) == LOW) {
digitalWrite(10,HIGH);
} else {
analogWrite(10,0);
}
if (digitalRead(3) == LOW) {
analogWrite(10,255);
delay(20);
analogWrite(10,0);
delay(50);
} else {
analogWrite(10,0);
}
}
二、姿态控制:
#include<Servo.h>
Servo analogservo;
Servo analogservo2;
#include "Wire.h"
#include "I2Cdev.h"
#include "MPU6050.h"
MPU6050 accelgyro;
int16_t ax, ay, az;
int16_t gx, gy, gz;
int16_t value
int16_t value2;
bool blinkState = false;
void setup() {
analogservo.attach(10);
analogservo2.attach(11);
}
void loop() {
accelgyro.getMotion6(&ax,& ay,& az,& gx,& gy,& gz);
value2=90-az/350;
value=90+ay/350;
analogservo2.write(value2);
analogservo.write(value);
blinkState = !blinkState;
delay(30);
}
其他设计
[现学现卖Arduino实战]一、盲人雷达
http://www.51hei.com/bbs/dpj-175950-1.html
(出处: 单片机论坛)
评分
楼主动手能力真强啊! 有几个问题:1。灯的控制和舵机都使用了10口,怎样防止冲突呢?2。开灯的程序,并行3个if判断,会不断进入else关灯的,也就是不管按哪个开关都会灯都会闪烁啊?3。LED灯的驱动是什么啊,能否支持PWM?
喜欢自驾游,几次夜路跑山道,发现弯急需要预判的地方灯光根本照不到!几次历险后萌发了这个跟踪头部动作引导灯光的想法。其实设计是去年做的,搞了个半截就去忙其他事情了,这两天比较闲就又从箱底翻出来继续做完。只可惜中间这一年多时间中多次做电脑系统,结果原始设计文档全部丢失,明明记得网盘备份过的,结果也找不到,郁闷。
开始是用6050做头追跟踪,结果发现Z轴效果太差,要么没反映,要么就发狂!现在换了DY-25发现效果不错,下来要搞的是手动切换和灯光的多档调光,希望在51假期前能挂到车上,跑跑山路,实际测试
开始是用6050做头追跟踪,结果发现Z轴效果太差,要么没反映,要么就发狂!现在换了DY-25发现效果不错,下来要搞的是手动切换和灯光的多档调光,希望在51假期前能挂到车上,跑跑山路,实际测试
喜欢自驾游,几次夜路跑山道,发现弯急需要预判的地方灯光根本照不到!几次历险后萌发了这个跟踪头部动作引导灯光的想法。其实设计是去年做的,搞了个半截就去忙其他事情了,这两天比较闲就又从箱底翻出来继续做完。只可惜中间这一年多时间中多次做电脑系统,结果原始设计文档全部丢失,明明记得网盘备份过的,结果也找不到,郁闷。
开始是用6050做头追跟踪,结果发现Z轴效果太差,要么没反映,要么就发狂!现在换了DY-25发现效果不错,下来要搞的是手动切换和灯光的多档调光,希望在51假期前能挂到车上,跑跑山路,实际测试
https://www.bilibili.com/video/BV1H5411w7We?share_source=copy_web
开始是用6050做头追跟踪,结果发现Z轴效果太差,要么没反映,要么就发狂!现在换了DY-25发现效果不错,下来要搞的是手动切换和灯光的多档调光,希望在51假期前能挂到车上,跑跑山路,实际测试
https://www.bilibili.com/video/BV1H5411w7We?share_source=copy_web
b站上我发了最近又重新开始搞的视频:
【3D打印】【Arduino】猜猜这是什么?头追。。。
【3D打印】【Arduino】车载头追探照灯,看哪照哪!
【3D打印】【Arduino】头追探照灯停车场测试
喜欢的可以上b站按标题搜一下
【3D打印】【Arduino】猜猜这是什么?头追。。。
【3D打印】【Arduino】车载头追探照灯,看哪照哪!
【3D打印】【Arduino】头追探照灯停车场测试
喜欢的可以上b站按标题搜一下