6.8 阴 周日
前不久,住在乡下的老母亲身体不舒服,到社区卫生中心输了几天液体。
社区卫生中心在农村,面积不大,只有一大两小三个病室,大病室有6个床位,小病室有3个床位,条件一般,可以收治常见简单病例。
让我惊奇的一点是,每个病床床头墙上都有一个无线呼叫按钮。陪护过病人的小伙伴都知道,输液一般都是多瓶,滴完一瓶后要去叫护士小姐姐来换液体,这里却不需要,只要按一下按钮,护士小姐姐收到消息后就来换液体了,挺方便家属和病人的,所以不少行动方便的病人一个人来输水。
在这个帖子中,我将模仿社区卫生中心的简易呼叫系统做一个小项目。

目标任务:
1、用M10模拟护士站的呼叫接收端,提供无线热点并做siot服务器,接收消息后在屏幕上显示并语音播报。
2、两块掌控板用作两个病室的消息发送端,接入热点,在按键后发送相应床位呼叫消息。
小贴士:
这个帖子只进行简单模拟,功能并不完善,后续需要用列表等知识优化升级。
硬件使用经验:
掌控板似乎对SIOT V2的支持不太好,在本项目测试中,掌控板与M10上的siot V2的消息发送时,M10上的siot V2服务器接收消息延迟较大,而且如果有一小段时间掌控板不发送消息,就会和服务器断开连接。
换用行空板K10接入SIOT V2测试,就非常稳定,太稳定了,根本不会掉线。
所以个人感觉,用SIOT做项目参加比赛或者作品展示,用M10和K10相当靠谱。

步骤1 护士站M10接收端,先跑起来
M10+扩展板后共有四个I2C,语音合成模块拨到I2C模式并用4P线接入M10的任意一个I2C口。

开启热点


开启SIOT

编写程序

将收到的消息如1016分成病室101和床位6两段,显示并语音播报。

步骤2 病室掌控端,发送消息
病室101的掌控+按键,分别对应6个床位,发送消息约定为1011-1016,病室101+床位号1-6。




编写程序


病室102掌控+4个按键,发送1021-1024。

程序类似。

基本功能测试通过,但是存在掌控板运行siot V2不稳定的问题。
小贴士:
这个帖子只进行简单模拟,功能并不完善,比如在病人较多时,后面的病人按键呼叫会掩盖前一个病人人的提示,又比如如果有三个病人在相近时间内按键呢,这时如何删去已完成换液体的病人呼叫消息呢,后续需要用列表等知识优化升级。
问题:
发现一个问题,行空板M10运行的是SIOT V2,如果有一小段时间没有消息发送,掌控板和它的连接就会断掉。
不知道SIOT V2是不是在掌控板上运行不稳定的原因。
下面换行空板K10测试。
测试结论:
K10和M10的SIOT V2运行非常稳定,非常稳定,非常稳定。

K10主板只提供两个IO接口,所以用两个按钮来测试。

提示:K10加上扩展板后,可以有很多数字引脚可用。



小结
经过数小时测试,包括连续按键和长时间静待,K10和M10的SIOT V2消息传递稳定运行,流畅不掉线。
附件
rzyzzxw2025.06.09
经过数小时测试,包括连续按键和长时间静待,K10和M10的SIOT V2消息传递稳定运行,流畅不掉线。