2091| 5
|
用古德微树莓派实现红外取号 |
长期以来,人们在银行、医院、电信、税务、工商、超市等营业大厅里随处可见前拥后挤的热闹景象,于是按键取号机迎运而生。今天我们将用树莓派和热敏打印机制作一个模拟取号机,适应抗疫的需要,我们用红外传感器替代机械按键。 主要硬件:树莓派、古德微扩展板、红外线传感器、热敏打印机。 先认识一下,今天的新设备:热敏打印机 一、热敏打印机打印文字: 登陆古德微帐号,先从打印机模块中的这条积木开始! 文字内容随变替换,大小可调,X、Y位置可变。如果要打印多行,继续复制即可。接下来,试试这几条语句: 连接好打印设备后,一口气打印了三行,原来,我们设计了一个银行的取号机。将上面的程序封装起来,命名为打印凭条函数。 当然这个函数中有一个小bug,有一个变量叫人数,它并没有赋值,不要紧,我们慢慢来。 用红外线传感器控制?也不难。 重复获取红外传感线的值,重复判断是否为1。有人靠近,其值为1,如果为1,就执行相应的打印程序,这样便实现了用红外线传感器替代机械按键的目的! 最后,还要解决变量人数这个小bug。设计这个叫人数的变量,是为了给排队的顾客提供一个顺序。在程序开始给它赋值为0,程序运行中,每一次触发红外线传感器,这个变量累加1即可。 最终的程序如下: 程序功能全部实现了,打印结果如下: 还想做一点改进!像这样的输出,如果有多行,怎么处理,我们可以试试变量、列表和循环。 大意是把准备打印的多行文字写成列表,将一条打印积木多次循环执行,循环的次数就是列表的长度。将它更新为打印凭条函数,代替原来的打印凭条函数,主程序保持不变。 如果考虑实际的打印效果,最后在打印内容结束后再打印两行空行,方便撕票! 今晚打印机开箱,以此为记! |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed