(二)模块和材料
为了达到以上目的和使红绿灯装置按我们设计的原理工作,通过现场观察、查阅资料和咨询交警等前期准备工作,并基于目前的技术应用现状和项目组成员的知识能力,我们选择了基于Arduino主控芯片加各种光电传感器的方案,制作了符合我们设想、实现我们想要的智能红绿灯装置。装置包括如下几个单元模块。
1.逻辑运算模块
我们选择Arduino这一微型智能硬件开发板,可以把Arduino看成一台电脑,这台电脑有主机,负责数据输入输出、处理运算和协调各个设备,可以管理各种各样的输入设备,如按钮、传感器等,也可以连接展示结果的输出设备,如数码管、喇叭等。
在本红绿灯装置中,我们采用人们普遍使用的ArduinoUNO。它性能优越,价格相对便宜且易于安装,在降低项目成本的基础上可保证项目的高质量。UNO基于ATmega328p微控制器,它是Arduino的大脑,是一款微功耗的8位AVRRISC高性能微控制器,可在单个时钟周期内执行功能强大的指令。它拥有14个数字引脚和6个模拟引脚(A0~A5),如图3所示。数字引脚的编号从引脚0至引脚13(即D0~D13),其中引脚0和引脚1用于接收和传输串行数据。这些引脚可以连接智能红绿灯装置的各种传感器和声音显示模块。
除了ArduinoUNO这个型号外,我们也可选择Nano,Due或Mega2560的硬件,它们没有本质的区别。UNO的成本和性能适中,而Nano适合于小尺寸的应用中,Due或2560输入输出的接口较多,可以连接更多的传感器。
2.信号输入模块
信号输入模块用的是光电传感器、红外传感器和按钮等,如图4所示。

图3 逻辑运算模块ArduinoUNO

图4 智能红绿灯装置使用的信号输入模块
3.信号输出模块(https://www.daowen.com)
信号输出模块有红黄绿三色信号灯、单色LED模块、直插LED灯、两位数码管、语音播放模块及喇叭等,如图5所示。

图5 智能红绿灯装置使用的信号输出模块
4.系统搭建用到的设备工具
装置制作中需要台式电脑或笔记本电脑用于编程,其中代码编写和烧录软件采用的是ArduinoIDE。万用表主要用来检测连接是否有短路或断路的情况,如断线异常等,还会用到电烙铁工具。

图6 相应的系统搭建设备
5.其他材料
需要的其他材料,如杜邦线、泡沫板、胶带、扎带、电子元件面包板、UNO扩展板、模拟道路贴纸、玩具小汽车、模拟行人的人偶、仿真绿化树及仿真路灯等,如图7所示。

图7 杜邦线、电子元件面包板、模拟道路贴纸及汽车模型