李佳珂,曾清清
(1.海南大学旅游学院,海口 570208;2.聊城大学计算机学院,聊城 252059)
2012年3月,英国剑桥大学开发并上市的树莓派(Raspberry Pi),是一种基于Linux操作系统的微型电脑电路板。这种电路板具备的优点有:①卡片非常小,具有电脑的大部分基本功能;②以SD/MicroSD卡位内存兼硬盘;③卡片主板有多个USB接口和一个以太网接口,可以连接键盘、鼠标、网线、显示器等外围部件;④支持Python、C、Scratch等多种编程语言。
近年来,树莓派开发板得到了广泛研究和推广,图1展示了近10年来相关研究发表论文数量趋势,由图1可见,特别是近三年来,树莓派得到了广泛关注,譬如2022年相关论文就达到了320篇左右。图2给出了树莓派相关论文主题分布图,由图2可见,树莓派相关主题主要包括物联网、智能家居、系统设计、人脸识别、深度学习、机器视觉、监控系统、门禁系统、无人机等相关热点领域。树莓派相关论文学科分布见图3,由图3可见,树莓派研发主要围绕计算机软件、自动化技术、电信技术、建筑科学与工程等相关学科。图4则给出了相关论文的发表机构分布情况。
图1 树莓派论文发文趋势
图2 树莓派相关论文主题分布
图3 树莓派相关论文学科分布
图4 树莓派相关论文发表机构分布
树莓派GPIO(General Purpose I/O Ports),即通用输入/输出端口,用户可以通过GPIO口进行硬件控制,如输出高/低电平,读取硬件状态(如读入超声波状态)等。
树莓派GPIO有两种引脚标号设置模式,一种是BCM模式,一种是BOARD模式,两种模式下针脚的编号不同。设置语句是GPIO.setmode(GPIO.BCM)和GPIO.setmode(GPIO.BOARD)。每个项目只能设置一种模式。
GPIO引脚设置编号模式后,通过以下语句设置该引脚为输入模式或输出模式:(1)设置输入模式:GPIO.setup(channel,GPIO.IN);(2)设置输出模式:GPIO.setup(channel,GPIO.OUT)。
本文所设计的智能物流小车相关引脚如表1所示。
表1 智能物流小车的引脚25右27左
超声波模块用于测试智能小车和障碍物之间的距离,该模块有4个引脚,如图5所示,Trig引脚作为控制端,用于控制发出超声波信号;Echo引脚作为接收端,用于接收反射回来的超声波信号;Vcc引脚连接5 V电源;GND引脚用于接地。超声波模块的工作流程如下:
图5 超声波连线图
(1)GPIO向Trig引脚发出高电平信号,用于发出测距信号;
(2)超声波模块自动发出8个40 kHz的方波,并自动检测是否有信号返回;
(3)若Echo端有信号返回,则采用公式(1)计算距离:
图6给出了智能小车效果图,具体模块设计如下:
图6 智能小车效果图
1.4.1 智能物流小车前进模块
1.4.2 智能物流小车后退模块
1.4.3 智能物流小车停止模块
1.4.4 智能物流小车左转模块
1.4.5 智能物流小车启动模块
1.4.6 智能物流超声波计算障碍物距离模块
智能物流小车程序流程图如图7所示。
图7 智能物流小车程序流程图
主代码如下:
树莓派开发板具备极强的可扩性,本文围绕树莓派开发板,并结合超声波探测、蜂鸣器等核心模块,采用Python编程语言,实现了一种灵活的智能物流无人配送系统平台。未来的研究工作主要围绕以下两点:①结合人脸识别模块,构建更加智能的物流小车系统;②结合深度学习等最新算法,实现精准的物流配送系统。