C++-远程-1个月
¥6-12K/月
技能要求: C++
经验要求: 5-10年经验
程序员客栈
2026-02-04 16:02
工作描述:
项目编号:【183435】
【第一阶段树莓派端开发内容】
一、基础配置与网络管理
1. 首次启动强制弹窗:树莓派首次开机(或恢复出厂设置后首次启动),必须弹出WiFi配网界面,不完成配网无法进入主界面,无跳过选项。
2. WiFi列表展示:配网界面自动扫描周边所有可连接的WiFi信号,按信号强度从高到低排序,每个WiFi名称后标注信号强度。
3. 密码输入与连接:点击目标WiFi后,弹出密码输入框(密码隐藏显示,支持删除、清空),输入完成后点击“连接”按钮,界面显示“Connecting...”加载提示;连接成功后,自动关闭配网界面,进入主界面,并保存该WiFi信息至本地。
4. 后续配网入口:主界面设置图标中,点击进入“WiFi配置”的选项,点击即可进入WiFi配网界面(同首次配网界面),用于后续修改WiFi、重新连接。
5. 异常处理与适配:
(1) 连接失败:密码错误、WiFi信号过弱、连接超时(10秒超时)时,弹窗提示具体错误(如“密码错误,请重新输入”“WiFi信号过弱,请靠近路由器”),点击“重新尝试”可再次输入密码连接,点击“返回”回到WiFi列表。
(2) WIFI连接时主界面显示已连接图标,断开时顶部显示断开连接的图标。
(3) 多WiFi记忆:支持保存最多N个已连接成功的WiFi信息,下次开机时自动扫描,优先连接信号最强的已保存WiFi,无需重复输入密码。
6. 界面选择基础配置,填写紧急联系人,城市信息等(部分非必选)。


二、蓝牙通讯与音频控制
1. 模式1:聊天助手模式
(1)核心逻辑:蓝牙模块自动断开与手机的所有连接(包括配对连接、音频连接),蓝牙功能临时禁用;
(2)音频 / 麦克风规则:设备本地麦克风和扬声器仅服务于语音助手;
(3)功能范围:语音助手全功能正常运行(唤醒、对话、播报、留言等),蓝牙音响功能不可用。
2. 模式 2:无线蓝牙音响模式
(1)核心逻辑:蓝牙模块启用并保持与手机的配对 / 连接状态,语音助手进程暂停(后台不运行,无法唤醒、无交互);
(2)音频 / 麦克风规则:设备麦克风通过蓝牙将音频传给手机(支持手机通话 / 录音拾音),手机的音频(音乐、通话、视频声音)通过蓝牙传回设备扬声器输出;(3)功能范围:仅保留蓝牙音响功能,语音助手所有功能不可用。
3. 界面模式切换实现,提示模式切换XX功能已启用,如切换到无线蓝牙音响模式寻找自动配对的耳机,连接上提示,没连接上提示需要蓝牙配对,参考模式 2(3)。
(1)可点击蓝牙配对,设备自动开启蓝牙并设置为 “可被发现” 模式,界面显示配对引导:“设备蓝牙名称:Your Caring Assistant,手机端搜索该名称并点击配对;
(2)手机完成配对后,设备弹窗提示 “蓝牙配对成功,已切换至蓝牙音响模式”,并保存该手机的配对信息(存储,仅保留 1 台手机的配对记录;

三、发送短消息功能
核心说明:通知紧急联系人的时候通过twillo短信
1. 读取紧急联系人联系方式,实现twillo平台API发送信息的功能,www.twilio.com/docs/messaging/quickstart。目前暂时考虑树莓派通过twilloAPI->用户手机的直达方式。


四、毫米波雷达智能交互(机上雷达)
核心说明:毫米波雷达检测人体存在,实现时段问候、触发限制遵循“两次问候间隔≥3小时,距离上次AI谈话≥1小时”的规则(上次AI谈话时间,需要我发语音助手记录)。
1. 雷达检测范围与精度:传感器设置参数,避免误触发。
2. 时段划分:(不同国家不同时期设)
(1) 早上:6:00-12:00(含6:00,不含12:00),问候语:Good Morning,自动切换不同问候词
(2) 下午:12:00-18:00(含12:00,不含18:00),问候语:Good Afternoon,自动切换不同问候词
(3) 晚上:18:00-24:00(含18:00,含24:00),问候语:Good Evening,自动切换不同问候词
3. 问候触发逻辑(所有条件必须同时满足,缺一不可):
(1) 毫米波雷达检测到人体(在检测范围内,且确认是人体);
(2) 距离上次触发问候的时间≥3小时(本地记录上次问候时间,每次触发后更新该时间);
(3) 距离上次AI谈话的时间≥1小时(通过我方提供的内存接口,读取上次AI谈话时间,若未发生过AI谈话,则无需满足此条件);
(4)当前是时间段播放过天气不需要重复播放天气信息了。
4. 播方调用TTS接口完成语音播报(管道方式)

五、毫米波雷达跌倒检测。(机外)
1. 摔倒检测逻辑:毫米波雷达识别人体摔倒特征进行判断,发送树莓派,由树莓派二次确认发送短信通知。
2. 树莓派进行语音询问,并记录事件,并在界面上显示 “你没事吧”,持续问几次。如果 2分钟没人按或没有语音回复, 就选取紧急联系人Twilio平台通讯发送通知。

六、天气功能
核心说明:获取当地天气和温度(根据客户当前城市),界面实时展示,且每日早上第一次触发问候时,在问候语后播报天气信息。
1. 城市获取:客户当前城市由我方提供(固定传入,或提供接口供开发方读取),无需开发方实现定位功能,仅需根据我方提供的城市名称,获取该城市的天气信息。
2. 天气API调用:
(1) 使用支持美国城市天气查询的API(与ha的天气免费api相同),根据基础信息提供的城市名称,查询该城市的当日天气(状态,如Sunny、Rainy)、当前温度(单位:华氏度°F,美国常用)。
(2) 数据更新频率:每1小时自动调用1次API,更新天气和温度信息,确保数据实时准确;若API调用失败(如网络异常),继续使用上一次获取的有效数据,同时本地日志记录“天气数据更新失败”,下次更新时重试。
3. 界面展示:
(1) 主界面固定位置,展示天气信息,包含3部分:天气图标(如晴天、雨天图标,适配天气状态)、当前温度(如72°F)、天气状态(如Sunny),图标清晰,字体适中,便于查看。
(2) 天气数据更新时,界面自动刷新,无弹窗提示,不影响用户操作;若长时间未获取到新数据(超过3小时),界面天气图标旁显示“数据过期”小字提示(灰色,不醒目)。
4. 晨间天气播报逻辑(严格遵循以下规则):
(1) 触发条件:每日早上(6:00-12:00需要按照当地时间)第一次触发毫米波雷达问候(即第一次满足问候触发逻辑,播报Good Morning),且天气数据有效(已成功获取到当前城市天气和温度)。
(2) 播报内容:在Good Morning播报完成后,立即调用我方TTS接口,传入天气播报语,格式固定为“Today's weather is [天气状态], temperature is [温度数值]°F”(如“Today's weather is Sunny, temperature is 72°F”)。
(3) 异常:仅早上第一次问候时播报,后续早上的问候(若触发)不播报;若早上第一次问候时,天气数据无效(未获取到),则仅播报Good Morning,不播报天气。

七、Google日历集成
核心说明:连接Google Calendar API,用户授权登录,同步日程,在树莓派界面上清晰展示,常用功能支持查看当日、当月,年日程界面参考app界面,并和点击详情。不用第三方网页,会弹出无法返回,使用API
1. 授权流程(仅首次需要,后续自动同步):
(1) 主界面设置页面新增“Google日历设置”入口,点击进入后,显示Google账号授权界面(跳转至Google授权页面,或嵌入授权窗口),用户输入Google账号(客户自己的账号)、密码,完成授权(授权范围:仅查看日历日程,不具备修改、删除日程权限)。
(2) 授权成功后,树莓派保存授权信息(本地加密保存,不泄露用户账号密码),自动跳转回设置页面,提示“Google日历授权成功,已开始同步日程”;授权失败(如账号密码错误、授权被拒绝),弹窗提示“授权失败,请重新尝试”,可重新进入授权界面。
2. 日程同步:
(1) 同步频率:每10分钟自动调用Google Calendar API,同步用户Google日历中的“日程”。
(2) 同步内容:每条日程展示到界面上。

八、本地闹钟
核心说明:本地语音可设置闹钟(以实现),在界面上展示以及通过界面也可以管理
1. 列表展示:每个闹钟显示“闹钟时间、重复模式、闹钟名称、开启/关停状态”,按时间从早到晚排序,区分单次还是日常。
2. 修改闹钟:点击列表中的闹钟,进入修改界面,可修改所有设置项(时间、重复模式、名称),修改完成后点击“保存”生效。
3. 关停/开启闹钟:每个闹钟右侧设置“开关”按钮,点击可切换“开启”“关停”状态;关停后,闹钟不再触发;开启后,按设置时间触发。
4. 删除闹钟:长按列表中的闹钟,弹窗提示“确定删除该闹钟吗?”,确认后删除。

九、本地视频UI框架可以播放
说明:UI框架可以播放本地目录下的视频,选择固定目录下的文件夹名为分类,文件名为列表进行播放,暂时不用考虑下载源和缓存播放的情况。

十、设备信息上传
核心说明:根据设备序列号,版本号,使用人名字(如有设定),使用人地址(如有设定),手机(如有绑定)、邮箱(如有绑定)紧急联络人(最多5个),最近一次使用时间,每日使用次数,(对话次数,点击视频次数,点击日历次数,是否使用克隆功能,雷达触发次数),睡眠健康信息等。
同步频率:常规信息每天上传1次,上传用户管理平台。特殊信息如雷达检测摔倒,确认后立刻上传。

十一、远程更新管理(树莓派端)
核心说明:支持远程更新(媒体库更新、应用程序更新、角色设置更新、模型更新)。实现身份验证,通信协议,监听指令。
1. 通用前提:(指令区分“媒体库更新”和“应用程序更新”和“角色设置”和“模型更新”),树莓派接受指令自行下载对应内容。
2. 远程更新:媒体库更新(无需重启设备,不中断当前运行),角色设置、模型、应用程序下载需要重启应用程序生效。下载内容进行校验,防止文件损坏,如校验不成功,删除重新下载。
3. 异常处理:更新中断(如网络中断),继续完成更新(如断点续传),不重复下载已完成的文件。下载失败,应用程序可以回滚。

阶段交付验收标准:
第一阶段,根据开发需求完成树莓派上11个主要功能和界面。项目周期3周(21天)。交付代码配置说明以及设备甲方测试完成为验收通过。
公司信息

立即沟通