基于树莓派的引导式机器人设计*
2024-01-02刘继军张旭峰赵泽宇王瑞豪马毓乾
刘继军,张旭峰,赵泽宇,王瑞豪,马毓乾
(太原工业学院,山西 太原 030013)
0 引言
随着时代进步,人民生活水平不断提升,流动人口总量持续增长。面对来自四面八方、需求各不相同的人群,服务人员的精力有限,一时之间难以满足人群的各种需求。
现阶段,我国大多数医院都没有真正站在患者的角度对门诊服务进行研究,存在就诊流程繁琐、等待时间长、服务态度差等问题。这不仅影响医疗服务质量和效率,更影响患者的就医效率。张川、贾小溪(2021)认为实施门诊改善服务,建立以病人需求为导向的门诊服务模式,通过强化信息技术支撑作用,助力智慧门诊服务建设,如建立AI智能客服平台,提供患者智能咨询服务,对门诊处方、化验单、检查单进行解读,能够更好地服务门诊患者[1]。
如能开发具有引导功能的机器人,既可帮助群众通晓办事流程,又能减少服务人员不必要的重复劳动,从而节约人力成本,降低因初次到访服务区域而不知所措的群众数量。
1 整体设计
机器人通过GPS获取机体位置、姿态角、距离等,通过HC-SR04超声波模块检测障碍,由树莓派控制电机行为,按照预先规定的路径及范围行动。通过ssh功能远程对树莓派进行控制及调整,通过蓝牙RSSI进行测距以避免与使用者分离。
2 硬件设备
2.1 树莓派
树莓派又称卡片式电脑,是一款基于ARM的微型电脑主板,以SD/MicroSD卡为内存硬盘,具备所有PC的基本功能。树莓派通过GPIO库对外设进行操作,具有很强大的可开发性[2]。
2.2 HC-SR04超声波模块
采用超声波发射接收一体的超声波测距模块HC-SR04,该传感器体积小,功耗低,并提供2 cm ~400 cm(约1英寸至13英尺)之间出色的非接触范围检测,精度为3 mm。如果发射的脉冲没有被反射回来,则回波信号将在38 ms后标记超时并返回低电平。因此,38 ms的脉冲即表示在传感器测距范围内没有障碍物存在。
2.3 GPS定位模块
GPS是全球定位系统的简称,源于 1958年美国军方的一个项目,直到1994年已完成24颗GPS卫星的布设,其全球覆盖率高达98%。GPS技术发展到现在,在一定的技术权限和精度要求的范围内,美国军方向全球民用需求开放GPS提供免费支持。GPS技术反应迅速,运作实时,具有高精度、全天候、使用广泛等特点,是目前最为成功的卫星定位系统。
2.4 移动方式
机器人依照其移动机构可分为轮式、履带式、腿式、蛇行式、跳跃式和复合式。其中轮式移动机器人按照车轮数目又可分为单轮滚动机器人、双轮移动机器人、四轮移动机器人、多轮 (复六轮和八轮) 移动机器人[3]。相比于其他各式机器人,轮式移动机器人机构简单,运行速度快,驱动、控制较为简易和方便。所以轮式机器人被大量应用于工业、农业、服务业等各个领域。
对于平整地面而言,单轮、双轮机器人天然具有不稳定的特征,强行配置务必将消耗一定的运算使机器人保持稳定。如无特殊要求,选择三轮或四轮机器人更为合适。此处选择后轮驱动前轮转向的四轮机器人。
转向机构采用了汽车常用的阿克曼转向机构,以此解决机器人转向时左、右转向轮的转向半径不同所造成的转向轮转角不同的问题。
3 关键技术
3.1 超声波测距
渡越时间探测法指的是超声波发生器往某个方向发射超声波,计时开始于发射的时间点,此后超声波沿直线传播,当超声波撞击到物体时就被反射回来,当超声波接收器接收到返回来的回波时计时停止[4]。
超声波测距通过超声波脉冲发射与接收的时间差进行计算。
其中,t为发射与接收的时间间隔;v为超声波在空气中传播速度;x为探头与被测物体间距离。
其中,T为环境摄氏温度。
3.2 自主定位导航
根据离线地图构建区划和路线。基于现有地图将服务区域中众多目的地,依照其位置划分为各个小区域。预先记录关键转折点位的位置信息。编译程序使机器人根据目的地自主判断所要到达的小区域,并依照预先录制的路线运行。
3.3 障碍物规避
小车共连接有三个HC-SR04超声波模块。小车运行过程中将不间断尝试获取前方距离,当距离小于预设值时停止前进,根据当前情况做出反应,越过障碍物后,控制小车回转方向并重新获取位置信息以判断当前位置,具体流程如图2所示。
图1 避障程序设计
图2 心电信号采集电路结构框图
图2 蓝牙连接程序设计
图3 心电信号采集系统总体设计方案框图
图4 人体实测连接图
3.4 微信小程序扫描二维码启动蓝牙连接设备(如图2所示)
3.4.1 初始化蓝牙设备(检测蓝牙是否开启)
如果手机上的蓝牙没有打开,可以提醒用户“手机蓝牙未打开”。初始化成功后,搜索周边蓝牙设备。
3.4.2 获取蓝牙设备信息
采用wx.getBluetoothDevices方式,获取在蓝牙模块生效期间所有已发现的蓝牙设备。包括已经和本机处于连接状态的设备。
3.4.3 判断里面是否有想要的蓝牙设备
找到指定蓝牙后,通过设备ID进行蓝牙连接,连接蓝牙成功之后关闭蓝牙搜索。未找到指定蓝牙则提醒使用者靠近一点重试。
3.5 通过RSSI测距实现跟随判定
随着无线传感网络(WSN)快速发展,基于WSN的定位技术也逐渐成为研究热门。但此类定位技术相较于GPS,往往依赖于外置信号源如WiFi、蓝牙、超宽带等或天然信号源,如地磁场实现定位,其具有许多缺点,常应用于室内。
此处仅需实现低精度的室外短距离测距,故采用蓝牙定位技术,通过蓝牙RISS值实现低精度测距。但是该技术容易受到外部噪声信号的干扰,信号稳定性较差,通信范围较小[5]。同时室外环境复杂多变,信号强度的测量值往往与理想中的强度存在差异。实际测量时会发现RSSI测量值会在中心值轻微波动的同时伴有个别粗大异常值。而且随着测量距离的增大,RSSI测量值的波动范围也会变大[6]。因此需要对测量的RSSI值进行预处理。
经研究,可以通过肖维勒法剔除测量时出现的个别粗大异常值[6],即确定一个以正态分布的均值为中心的数据范围,对不符合该限度的值作异常值进行剔除。此时即可将数据导入计算发射端和接收端之间的距离。
通过3.4所述将使用者智能设备与机器人进行蓝牙连接。
通过蓝牙信号估算距离,测距算法公式:
其中,d为计算所得距离;RSSI为接收信号强度;A为发射端和接收端相距一米时的信号强度;n为环境衰减因子。
采集两组不同的d值与RSSI值,分别为(d1,RSSI1)、 (d2,RSSI2),根据距离与信号强度计算n值公式:
根据距离与信号强度计算A值公式:
当n值确定后计算A值公式:
A=abs(RSSI)-10×n×log10d.
因n值及d值均确定,故实际A值只与RSSI值相关
通过计算得到d值后,如使用者与机器人之间的距离过大,则控制机器人停止前进、闪烁指示灯等待使用者靠近。
3.6 电机驱动
采用ZM-6510M模块实现驱动,该模块可采用PWM占空比控制或者通过485串口控制。此处采用PWM占空比控制方式进行控制。将无刷电机接入ZM-6510M模块,使用24 V电源供电,即可通过PWM控制电机工作。模块PU端口即为PWM脉冲波输入口,可以通过输入不同空占比的PWM脉冲波控制电机的转动速度[7]。DIR端口可选择电机的正反转。BREAK端口和EN端口分别控制电机的停止和启动。另外,该模块还可以输出一些运行中的警告信息和电机的转速信息且具有欠压、过压、堵转、过热保护。
4 结语
本文所设计的轮式机器人,以树莓派4b为控制核心,通过人为确定路径范围实现了一定区域内的引导服务。机器人可自主完成避障行动,使用者可通过微信小程序与其进行沟通操作,管理者可通过ssh功能对机器人进行调整。RSSI测距可以使机器人保持在使用者一定范围内进行活动。但是通过人为确定路径范围较为繁琐复杂,不利于机器人的广泛应用。后期可以接入如百度地图开放平台等地图导航系统应用于更加广阔的室外,或者可以搭配精细的RSSI定位模块应用于室内。该机器人总体而言具有较强的扩展性和可兼容性。