★★★★★★ 家庭防盗小车:通过人体检测模块检测是否有人,来开启蜂鸣器报警。
★★★★★★ 自动大灯:通过车载感光元件检测亮度,自动开关灯。
★★★★★★ 智能寻光:采用光敏传感器,检测车头各个方向的亮度,完成自动跟踪。
作者:sumjess
获取该源码方式:
1、CSDN下载:
① 寻光:https://download.csdn.net/download/qq_38351824/11107066
② 防盗:https://download.csdn.net/download/qq_38351824/11107115
③ 大灯:https://download.csdn.net/download/qq_38351824/11107123
2、可以关注点赞并在下方评论,我给你邮箱发过去。
3、关注微信公众号下载:
① 关注微信公众号:Tech云
②
一、家庭防盗小车
该部分的程序是有两部分组成的,一部分是由我之前写的博客------避障小车,构成家庭防盗小车的动力部分,另一部分是家庭防盗系统,以下就只写该车这部分的内容,两部分拼在一起就构成了全部。
这一部分其实也很简单,使用的是人体检测模块(资料下载:https://download.csdn.net/download/qq_38351824/10601569)
我就直接写出这一部分的程序了:
#define val analogRead(A0) //ADC采集
#define beep_pin 2
void beep(void); //蜂鸣器警报
void setup()
{
pinMode(beep_pin, OUTPUT); //蜂鸣器引脚初始化
}
void loop()
{
if(val==550) beep(); //如果检测到人开始警报
}
void beep(void)
{
digitalWrite(beep_pin, HIGH); // 使蜂鸣器响
delay(100); // 延迟0.1秒
digitalWrite(beep_pin, LOW); // 使蜂鸣器灭
delay(100); // 延迟0.1秒
}
二、自动大灯
该部分的程序是有两部分组成的,一部分是由我之前写的博客------避障小车,构成动力部分,另一部分是自动开灯系统,以下就只写该车这部分的内容,两部分拼在一起就构成了全部。
这一部分其实也很简单,使用的是光敏电阻模块(资料下载:https://download.csdn.net/download/qq_38351824/10601580)
或光敏二极管模块(资料下载:https://download.csdn.net/download/qq_38351824/10601584)
我就直接写出这一部分的程序了:
#define val analogRead(A1) //光敏ADC采集
#define LED_pin 2
void setup()
{
pinMode(LED_pin, OUTPUT); //LED引脚初始化
}
void loop()
{
if(val==798) digitalWrite(LED_pin, HIGH); //如果检测到天黑开始点灯
else digitalWrite(LED_pin, LOW);
}
三、智能寻光
话不多说直接上代码,很简单
#define val2 analogRead(A1) //光敏ADC采集
#define val3 analogRead(A2) //光敏ADC采集
#define val4 analogRead(A3) //光敏ADC采集
#define LED_pin 3
void LED(void);//自动开大灯
void LED2(void);//寻灯
void setup()
{
pinMode(LED_pin, OUTPUT); //LED引脚初始化
motor_pinint(); //电机引脚初始化
}
void loop()
{
if(val==798) digitalWrite(LED_pin, HIGH); //如果检测到天黑开始点灯
else digitalWrite(LED_pin, LOW);
LED2();
}
/*电机引脚初始化*/
void motor_pinint( )
{
pinMode (leftA_PIN, OUTPUT); //设置引脚为输出引脚
pinMode (leftB_PIN, OUTPUT); //设置引脚为输出引脚
pinMode (righA_PIN, OUTPUT); //设置引脚为输出引脚
pinMode (righB_PIN, OUTPUT); //设置引脚为输出引脚
}
/**************************************************
forward子函数——前进子函数
函数功能:控制车前进
**************************************************/
void forward( )
{
analogWrite(leftA_PIN,120);
analogWrite(leftB_PIN,0); //左轮前进
analogWrite(righA_PIN,120);
analogWrite(righB_PIN,0); //右轮前进
}
/**************************************************
turnLeft子函数——左转子函数
函数功能:控制车左转
**************************************************/
void turnLeft( )
{
analogWrite(leftA_PIN,0);
analogWrite(leftB_PIN,0); //左轮静止不动
analogWrite(righA_PIN,120);
analogWrite(righB_PIN,0); //右轮前进
}
void turnbackRight( )
{
analogWrite(leftA_PIN,0);
analogWrite(leftB_PIN,120); //左轮后退
analogWrite(righA_PIN,0);
analogWrite(righB_PIN,0); //右轮静止不动
}
void LED(void)
{
if(val2==798) digitalWrite(LED_pin, HIGH); //如果检测到天黑开始点灯
else digitalWrite(LED_pin, LOW);
}
void LED2(void)
{
/*val2 val3 val4*/
if((val3>=val2)&&(val3>=val4)) forward( ); //如果中间最大,直行
else if((val2>val3)&&(val2>val4)) turnLeft( ); //如果左边最大,左转
else turnbackRight( ); //如果右边最大,右转
}
小编觉得没有什么难点就没有详细的写,大家如果有任何疑问,可在下方提出。