自制Arduino探测车DIY图解

电子说

1.2w人已加入

描述

步骤1:Raspberry Pi Config(运动)

使用运动设置网络摄像头:

连接到RPi:

sudo apt-get update

sudo apt-get upgrade sudo apt-get install nano sudo apt-get install motion

编辑运动文件:

sudo nano /etc/default/motion

更改以下行:

start_motion_daemon=yes

编辑配置文件:

sudo nano /etc/motion/motion.conf

并更改或检查以下参数:

set “daemon on” set “minimum_frame_time 3” set “quality 80” set “webcam_port 8081” set “control_port 8080” set “webcam_localhost off” 《立方厘米= 1》

现在要查看显示的图片,请打开浏览器,网址为http://YOURIPADDRESS:8081

有关运动的更多信息:

http://www.lavrsen.dk/foswiki/bin/view/Motion/WebH 。..

步骤2:Raspberry Pi Config(WiringPi)

树莓派

要安装WiringPi,您需要先安装git-core。

set “width 640”

然后,获取WiringPi文件:

set “height 480” sudo service motion restart sudo apt-get install git-core

您可以使用以下方式检查安装:

git clone git://git.drogon.net/wiringPi

结果将

更多信息,请访问:

http://wiringpi.com

http://connectionpi.com/the-gpio-utility/

步骤3:Raspberry Pi配置(Apache Web服务器+ Php)

安装Apache和php5 :

cd wiringPi

要检查apache是否正在运行,请打开浏览器并转到http ://YOURIPADDRESS

您应该获得默认页面“它有效”(图1)。

要检查php安装:

。/build gpio -v

gpio readall

插入以下行

?》

然后打开浏览器并转到http://YOURIPADDRESS/info.php

您应该获得php信息页面(图片2)。

安装Web界面以控制您的流动车

将文件从web.tar.gz提取到/var/www/

sudo apt-get install apache2 php5 libapache2-mod-php5 cd /var/www

在/var/www/index.php更改第31行,用您的wlan0 IP地址替换0.0.0.0。

让pi用户访问Web文件夹

sudo chown -R pi:www-data/var/www

sudo gpasswd -a pi www -data

现在打开浏览器,网址为http://YOURIPADDRESS/index.php

您应该获得类似于手机屏幕截图的结果(图3) )

步骤4:将文件上传到Arduino

将此草图上传到您的arduino,或下载YEAR-sketch.ino

#include Servo Vservo;

int Hstate = 90;

int Vstate = 90;

int in1 = A2;

int in2 = A3;

int in3 = A4;

int in4 = A5;

int camup = 6;

int camdown = 7;

int camleft = 8;

int camright = 9;

int p2;

int p3;

int p4;

int p5;

int p6;

int p7;

int p8;

int p9; void setup(){ Vservo.attach(11);

pinMode(A2,INPUT);

pinMode(A3,INPUT);

pinMode(A4,INPUT);

pinMode(A5,INPUT);

pinMode(6,INPUT);

pinMode(7,INPUT);

pinMode(8,INPUT);

pinMode(9,INPUT);

pinMode(2,OUTPUT);

pinMode(3,OUTPUT);

pinMode(4,OUTPUT);

pinMode(5,OUTPUT);

}

void loop(){

p2 = AnalogRead(A0) );

p3 =模拟读取(A1);

p4 =模拟读取(A2);

p5 =模拟读取(A3);

p6 =数字读取(camup);

p7 =数字读取(camdown );

p8 = digitalRead(camleft);

p9 = digitalRead(camright);

if(p6 == LOW || p7 == LOW)

stop();

如果(p6 == HIGH || p7 == HIGH)horizontal();

if(p8 == HIGH || p9 == HIGH )

vertical();

if(p2》 512)

forward();

if(p3》 512)

backward();

if(p4》 512)

left();

if(p5》 512)

right();

}

void horizontal()

{

if(p6 == HIGH && p7 == LOW)

{Hstate = Hstate + 2; }

if(p6 == LOW && p7 == HIGH)

{Hstate = Hstate-2; }

if(p6 == HIGH && p7 == HIGH)

{Hstate = 90; }

if(Hstate》 = 180)Hstate = 180;

if(Hstate 《= 0)Hstate = 0;

Hservo.write(Hstate);

delay(150);

}

void vertical()

{

if(p8 == HIGH && p9 == LOW)

{Vstate = Vstate + 2; }

if(p8 == LOW && p9 == HIGH)

{Vstate = Vstate-2; }

if(p8 == HIGH && p9 == HIGH)

{Vstate = 90; }

if(Vstate》 = 180)Vstate = 180;

if(Vstate 《= 0)Vstate = 0;

Vservo.write(Vstate);

delay(150);

}

void forward()

{

digitalWrite(2,HIGH);

digitalWrite(3,LOW);

digitalWrite(4,HIGH);

digitalWrite(5,LOW );

}

无效向后()

{

digitalWrite(2,LOW);

digitalWrite(3,HIGH);

digitalWrite(4,LOW);

digitalWrite(5,HIGH);

}

void left()

{

digitalWrite(2,HIGH);

digitalWrite(3,LOW);

digitalWrite(4,LOW );

digitalWrite(5,HIGH);

}

void right()

{

digitalWrite(2,LOW);

digitalWrite(3,HIGH);

digitalWrite(4,HIGH);

digitalWrite(5,LOW);

}

void stop()

{

digitalWrite(2,LOW);

digitalWrite(3,LOW );

digitalWrite(4,LOW);

digitalWrite(5,LOW);

}

伺服库应已安装

步骤5:即插即用!

树莓派

-设置流动站轮(和电动机)

-设置伺服器和网络摄像头

-将H桥连接到电动机

-将H桥连接到Arduino

-将Raspberry连接到Arduino

-将摄像头插入Raspberry

-将电池连接到H桥,将arduino和Rasperry插入移动电源。

责任编辑:wv

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分