[Arduino技术课程(高中)]第四课交通信号灯模型

查看: 5718|回复: 0

[Arduino技术课程(高中)] 第四课交通信号灯模型

[复制链接]
本帖最后由 hnyzcj 于 2014-4-27 10:15 编辑

交通信号灯模型
作者:陈杰
教学目标
知识与技能:
1.    使用电阻、LED灯、四脚按键等元件制作交通信号灯模型。
2.    了解下拉电阻的作用,掌握下拉电阻的接法。
3.    交通信号灯实验物理电路的正确连接。
过程与方法:
1.  教师讲解,交通信号灯功能原理及下拉电阻的作用及正确连线。
2.  动手实验,正确连接物理电路,烧录程序。
3.  测试程序,查看实验结果。
情感态度价值观:
    通过本次实验,学习电路连接,尝试改造创新的精神。
教学重点
依据功能组件交通信号灯模型电路,正确连接电路。
了解下拉电阻的作用,掌握下拉电阻的接法。
掌握Arduino IDE相关语法结构及指令。
教学难点
下拉电阻电路连接、程序指令掌握

实验器材:
DFRobotArduino入门套件、Arduino ide 1.04

教学过程
1.情景引入
教师展示现实生活中的三色交通信号灯图或视频。
1.jpg
分析及工作原理为:红、红黄交替、绿、绿黄交替,然后在回到红。(可由学生总结归纳)师:前面三次已经学习了LED、四脚按键、电阻等元器件的使用,可能大家觉的有些简单,那么今天我们把这些东西都用上,制作一个有实际作用的项目。按键开关控制的交通信号灯:如果一直按着按键不放,指示灯将按规则依次变化;单步按下按次序改变状态。本课所需器材为:控制板、面包板、220欧姆电阻、杜邦线、四脚按钮、LED(红、黄、绿)。生:学生准备相关器材。设计意图:案例引入,原理介绍,准备新实验器材。 2.新知讲授准备好上面的东西,我们还不慌开始今天的实验了,上次按键实验中留给大家一个测试:手接近按键或触摸搭接模拟口0的绿色杜邦线,看看有何现象?实际上如果你做过这个测试当手接近开关就会亮灯。这个是因为没有下拉电阻,使得外界干扰影响了判断。所以我们今天为了避免出现上述情况,先来学习下如何屏蔽干扰。通常是以下拉电阻的方式屏蔽干扰。(1.)认识器材下拉电阻的主要作用是与上接电阻一起在电路驱动器关闭时给线路(节点)以一个固定的电平。先来看一下下拉电阻的接法。在接按键的接口与GND之间接一个1K-10K Ω的电阻。其作用是当外界有干扰源的时候,在断开状态下,干扰源在通向GND的过程中,会被电阻消耗掉。
未标题-1 复制.jpg
(2.)连接电路
物理电路连接如下图所示:红、黄、绿三盏LED灯分别连接在控制板的8,7,6数字口上(LED连接方法与之前项目相同)。将四脚按键第1引脚连接在5V插孔(红色线),将第2引脚接在数字口9通过一个10K欧的电阻接地。 02.jpg
设计意图:介绍Arduino物理电路连接,为后面正确实验效果奠定基础。
int redpin=8;
int yellowpin=7;
int greenpin=6;
int buttonpin=9;
int state=0;
void setup()
{ pinMode(redpin,OUTPUT);
pinMode(yellowpin,OUTPUT);  
pinMode(greenpin,OUTPUT);
pinMode(buttonpin,INPUT);
}
void loop()
{ if (digitalRead(buttonpin))
{    if (state==0)   
{       digitalWrite(redpin,HIGH);      
digitalWrite(yellowpin,LOW);      
digitalWrite(greenpin,LOW);        
state=1;    }   
else if (state==1)   
{       digitalWrite(redpin,HIGH);      
digitalWrite(yellowpin,HIGH);      
digitalWrite(greenpin,LOW);            
state=2;   
}   
else if (state==2)     
{       digitalWrite(redpin,LOW);      
digitalWrite(yellowpin,LOW);      
digitalWrite(greenpin,HIGH);         
state=3;   
}   
else if (state==3)   
{      
digitalWrite(redpin,LOW);      
digitalWrite(yellowpin,HIGH);      
digitalWrite(greenpin,HIGH);         
state=0;   
}   
delay(1000);
  }
}   
将上述代码复制到IDE窗口中,先编译,如果无误后,再上传烧录至控制板中。如上图所示,完成后可以测试实验结果。
(4.)代码学习
if(条件判断语句)和 ==、!=、<、>(比较运算符)if 语句与比较运算符一起用于检测某个条件是否达成,如某输入值是否在特定值之上等。
if 语句的语法是:
if (someVariable > 50)
{  // 执行某些语句}

三.课堂练习师:
今天玩了四脚按钮控制LED灯实验,那么在实验过程中你是否发现如下现象。
1.复习巩固本课学习知识,理解掌握下拉电阻的用法及连线。
2.修改上述程序使得达到功能为:红、黄、绿灯依次点亮,时间间隔200MS, ,接着从右边的绿灯开始间隔200ms依次熄灭三个led灯。灯闪烁子程序:三个led灯首先全部点亮,接着延时200ms,最后三个led灯全部熄灭,整个过程循环两次就实现了闪烁的效果。

四.学习总结依据功能组件交通信号灯模型电路,正确连接电路。了解下拉电阻的作用,掌握下拉电阻的接法。掌握Arduino IDE相关语法结构及指令。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
wifi气象站

硬件清单

btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2019 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail