当前位置: 首页 > web >正文

语音控制设备的仿真/语音调试

1. 增加Iot实体类

from src.iot.thing import Thing, Parameter, ValueTypeclass Lekiwi(Thing):def __init__(self):super().__init__("Lekiwi", "lekiwi移动机器人")self.current_car_status = "静止"self.current_arm_status= "静止中"self.is_moving_status = Falseprint(f"设备初始化完成")# 定义属性self._register_properties()self._register_methods()def _register_properties(self):"""注册属性"""self.add_property("current_car_status", "当前车辆状态", lambda: self.current_car_status)self.add_property("current_arm_status", "当前机械臂状态", lambda: self.current_arm_status)self.add_property("is_moving_status", "是否静止", lambda: self.is_moving_status)def _register_methods(self):"""注册方法"""self.add_method("moveForward","向前移动",[],lambda params: self._move(0))self.add_method("moveBackward","向后移动",[],lambda params: self._move(180))self.add_method("moveLeft","向左移动",[],lambda params: self._move(270))self.add_method("moveRight","向右移动",[],lambda params: self._move(90))self.add_method("move","向定方向移动(0-360)",[Parameter("direction", "向指定方向平移", ValueType.NUMBER, True)],lambda params: self._move(params["direction"].get_value()))self.add_method("turn","原地旋转(正/反)",[Parameter("direction", "原地正反转", ValueType.BOOLEAN, True)],lambda params: self._turn(params["direction"].get_value()))def _move(self, direction: int):print(f"车辆准备向{direction}方向运动")return {"status": "success", "message": "移动完成"}def _turn(self, direction: bool):if direction:direction = "顺时针"else:direction = "逆时针"    print(f"车辆准备向{direction}原地旋转")return {"status": "success", "message": "原地旋转完成"}

2. 增加Iot设备

# application.py中的_initialize_iot_devices方法中增加
from src.iot.things.lekiwi import Lekiwi
thing_manager.add_thing(Lekiwi())

3. 仿真调试

在这里插入图片描述

4. 待接入车辆的遥控调试

【车辆遥控的开源代码单独调试】https://blog.csdn.net/suoxd123/article/details/146065673

http://www.xdnf.cn/news/8099.html

相关文章:

  • Linux问题排查-磁盘IO使用率满如何分析
  • lambda表达式详解
  • leetcode 83和84 Remove Duplicates from Sorted List 和leetcode 1836
  • 设计模式-工厂模式和策略模式
  • Keil5 MDK LPC1768 RT-Thread KSZ8041NL uIP1.3.1实现UDP网络通讯(服务端接收并发数据)
  • 【web应用】vue3前端框架怎么修改logo?
  • 硬件产品死机问题
  • 蓝牙低功耗(BLE)的通信信道和包类型
  • HarmonyOS 鸿蒙应用开发基础:父组件和子组件的通信方法总结
  • linux系统启动脚本(格式问题)
  • 分布式系统设计 - 性能优化
  • Spring Cloud Gateway高并发限流——基于Redis实现方案解析
  • 【LeetCode 热题 100】二分查找 系列
  • 多维应用场景的落地实践的智慧园区开源了
  • HarmonyOS优化应用文件上传下载慢问题性能优化二
  • MVC 与 MVT:Web 开发架构模式的异同与实践
  • spark-Catalyst 优化器和 Tungsten 执行引擎介绍
  • AI之光,点亮星途 :揭秘“智语心桥”,如何用科技为孤独症儿童架起沟通的桥梁
  • (第95天)OGG 微服务搭建 Oracle 19C 到 MySQL 8 双向同步
  • 可信计算是什么?可信逻辑:计算系统安全的形式化分析框架
  • 【brpc】安装与使用
  • AGI大模型(32):LangChain实现RAG
  • NSSCTF-[陇剑杯 2021]webshell(问6)
  • 关于如何在Springboot项目中通过excel批量导入数据
  • Flask vs. Django:如何选择最适合你的 Web 框架?
  • 基于Scikit-learn与Flask的医疗AI糖尿病预测系统开发实战
  • 蓝桥杯 3. 涂色
  • OceanBase数据库全面指南(基础入门篇)
  • C# 实现轻量化数据库SQLite在工业中上的应用
  • TensorFlow深度学习实战(17)——主成分分析详解