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

1. 增加Iot实体类

from src.iot.thing import Thing, Parameter, ValueType

class Lekiwi(Thing):
    def __init__(self):
        super().__init__("Lekiwi", "lekiwi移动机器人")

        self.current_car_status = "静止"
        self.current_arm_status= "静止中"
        self.is_moving_status = False

        print(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(
            "turnClockwise",
            "原地正转",
            [],
            lambda params: self._turn(True)
        )
        
        self.add_method(
            "turnAnticlockwise",
            "原地反转",
            [],
            lambda params: self._turn(False)
        )

        self.add_method(
            "move",
            "向定方向移动(0-360)",
            [Parameter("direction", "向指定方向平移", ValueType.NUMBER, True)],
            lambda params: self._move(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

【最终语音控制系统集】https://blog.csdn.net/suoxd123/article/details/148147034

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

具身小站

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值