一、问题提出:
××小学位于高速公路迳口隧道南行500米处的北面,,这是一所紧挨着国道的学校,每天有超300名学生要穿过国道上下学。每天一辆接一辆的重型大货车从校门口呼啸而过,其他车辆的速度也毫不示弱,整个道路犹如赛车场,给该校学生上学、放学带来极大交通隐患。现在我们通过掌控板为××小学的孩子们竖个红绿灯!让孩子们安全上学、回家!
二、方案设计:
在不影响主干道行车的条件下,在此设立一个红绿灯,红绿灯不能像市区的红绿灯那般循环进行,而应该是设置为手动模式,当行人按下按钮的时候,有一个缓冲时间(等待一段时间),然后行人方向绿灯,行车方向红灯,待行人过后(预算时间),行车方向红灯转绿灯,行人方向绿灯转红灯。一直到等待下一次行人按下按钮。
三、实验器材:掌控板两块或三块,(场景图纸布置,Lasercut的红绿灯支架……)。
四、功能设计:
①利用掌控板自带的3颗全彩LED灯珠作为红绿灯,分别用作行人方向和行车方向的红绿灯;
②一般状态下,行车方向的掌控板亮绿灯,行人方向的掌控板亮红灯;
③当行人方向的掌控板A键按下,
并同时给行车方向的掌控板发出一个广播信号,
两者同时经过一段缓冲时间之后,
行车方向的绿灯闪烁→黄灯→红灯,行车方向转为红灯的同时,行人方向的掌控板LED转为绿灯,
等待一段时间之后,
行人方向的绿灯闪烁→黄灯→红灯;
④回复到②并等待行人按下按键A。
此处注意红绿灯的同步!
五、任务分解:
1、行人端红绿灯任务分解:
①行人方向的灯是红色的,等待行人按下A键,
②当行人需要过马路的时候,按下按钮,同时给行车方向的红绿灯发射信号,等待缓冲时间,红灯转绿灯。
③行人走完之后(绿灯亮一段时间),黄灯闪烁3次,再变为红灯。
参考例程:
PS:此处采用了两个函数,以减少代码块。
2、行车端红绿灯任务分解:
①亮绿灯,等待接收广播指令;
②当接收到广播指令,等待缓冲时间,黄灯闪亮3次,红灯亮,等待15秒,行人通过后,恢复绿灯。
参考例程:
六、功能扩展
作品可以继续完善,如:人行道两边增加按钮,场景的搭建,利用掌控板自带的蜂鸣器增加声音提醒功能,显示屏中以图像来显示人站立等待抑或行走等等……
七、演示视频
便民红绿灯--按键式_腾讯视频
网友评论