yahboom
HomeLearn
Solution
Blog
Online Store
About Us
EN/中文
DOFBOT-JetsonNANO📖
00.Must Read Before Use!!
  • 00.Must Read Before Use!!
01.First Trial
  • 1.First Trial
  • 2.Analysis of common problems
  • 3.Calibration offset
  • 4.Precautions for DIY Robotic Arm
  • 5.Jetson Nano Version – Must Read
  • 6.Robotic arm gripping anomaly solutions
02.Assemble Course
  • 1.Installation video
  • 2.Calibrate the Robotic Arm
  • 3.Install the map
03.Remote control course
  • 1.Mobile APP control
  • 2.USB handle control
  • 3.PC web page programming
04.Preparation
  • 1.Manage APP control service
  • 2.Manage JupyterLab service
  • 3.Manage OLED service
  • 4.Modifying ROS_DOMAIN_ID for Multi-Machine
  • 5.Jetpack old system upgraded to SUPER system
05.Basic control course
  • 1.Control RGB light
  • 2.Control buzzer
  • 3.Control single servo
  • 4.Read servo angle
  • 5.Control all servo
  • 6.DOFBOT up down left right
  • 7.DOFBOT dancing
  • 8.DOFBOT memory action
  • 9.DOFBOT grab block
  • 10.Porter
  • 11.Stacked Arhat
  • 12.Synchronous action
  • 13.USB camera display
06.AI vision basic course
  • 1.Gesture Recognition
  • 2.Color threshold adjustment&Color calibration
  • 3.Color recognition
  • 4.Face recognition
  • 5.YOLOv11 garbage recognition
  • 6.YOLOv11 object recognition
07.2D Visual Tracking Course
  • 1.PID algorithm basics
  • 2.Color block positioning
  • 3.Color block tracking
  • 4.Face positioning
  • 5.Face tracking
  • 6.Gesture recognition fixed action
08.2D Visual Grasping Course
  • 1.Gesture recognition stack blocks
  • 2.Color recognition grab blocks
  • 3.Catch game
  • 4.Color sorting and stacking
  • 5.Garbage sorting
  • 6.Color interaction
09.Mediapipe course
  • 1.Hand detection
  • 02.Posture detection
  • 3.Overall detection
  • 4.Facial Detection
  • 5.Face Detection
  • 6.Face effects
  • 7.3D object recognition
  • 8.Paintbrush
  • 9.Finger control
  • 10.Gesture Recognition
  • 11.Gesture control robotic arm action group
  • 12.Arm posture control robotic arm
  • 13.Palm Targeting
  • 14.Robotic arm tracks the palm
  • 15.Fingertip trajectory recognition
  • 16.Fingertip trajectory control robotic arm
  • 17.Gesture Grasp and Release Objects
  • 18.Finger Control Robot Arm
10.AI Large Model Voice Module (Must Read)new
  • 1. Introduction to AI Large Model Voice Module
  • 2. Flash the firmware (Must read)
  • 3. Modify the wake-up word and command word
11.2D Voice Control Coursenew
  • 01.Simple Voice Control
  • 02.Smart Voice Control
  • 03.Voice Action Control
  • 04.Memory Learning Mode
  • 05.Color Recognition with Voice Broadcast
  • 06.Color Recognition and Grasping with Voice Broadcast
  • 07.Color Recognition and Sorting with Voice Broadcast
  • 08.Voice Recognition Target Tracking
  • 09.Voice Control Stacking
  • 10.Voice Control Color Sorting and Stacking
  • 11.Garbage Recognition with Voice Broadcast
  • 12.Garbage Sorting with Voice Broadcast
12.Robotic Arm Control and Inverse Kinematics
  • 1. Robotic arm ROS control
  • 2. Inverse solution
13.3D Sorting and Grasping Coursenew
  • 1.AprilTag ID sorting
  • 2.MediaPipe Gesture-AprilTag ID sorting
  • 3.MediaPipe Gesture-AprilTag distance sorting
  • 4.Block color sorting
  • 5.Block different shape sorting
  • 6.Yolov11 garbage sorting
14.3D Tracking Coursenew
  • 1.AprilTag Tracking
  • 2.Color Block Tracking
  • 3.KCF Object Tracking
15.3D Voice Control for Sorting & Tracking Coursenew
  • 1.Voice Control AprilTag ID Sorting
  • 2.Voice Control Color Block Sorting
  • 3.Voice Control Yolov11 Garbage Recognition Sorting
  • 4.Voice Control AprilTag Tracking
  • 5.Voice Control Color Block Tracking
  • 6.Voice Control Object Tracking
16.AI Model Basicsnew
  • 1.AI large model types and principles
  • 2.RAG retrieval enhancement and model training samples
  • 3.Embodied intelligent robot system architecture
  • 4.Embodied intelligent functions core source code
17.AI Model Developmentnew
  • 1.Register a model service provider account
  • 2. Configure API-KEY
  • 3. Introduction to Dify
  • 4. Basic Dify Features
  • 5. Deploy the RAG knowledge base
  • 6. AI Large Model Development - chatbot
  • 7. RAG knowledge base + chatbot
  • 8. AI agent workflow
18.AI Model – Text Versionnew
  • 1. Semantic understand instruction following
  • 2. Multimodal visual understand
  • 3. Text Large Model + robotic arm control
  • 4. Multimodal Large Model+video understanding
  • 5. Multimodal Large Model+robotic arm gripping
  • 6. Multimodal Large Model+robotic arm tracking
  • 7. Multimodal Large Model+robotic arm sorting
  • 8. Multimodal Large Model+robotic arm handling
  • 9. Multimodal Large Model+Color Blocks Back In Place
  • 10. Multimodal Large Model + Intent Prediction + Robotic Arm Gripping
  • 11. Text Large Model + YOLOv11 + Intelligent Garbage Classification
19.AI Model – Voice Versionnew
  • 1. Semantic understand instruction following
  • 2. Multimodal visual understand
  • 3. Text Large Model + robotic arm control
  • 4. Multimodal Large Model+video understanding
  • 5. Multimodal Large Model+robotic arm gripping
  • 6. Multimodal Large Model+robotic arm tracking
  • 7. Multimodal Large Model+robotic arm sorting
  • 8. Multimodal Large Model+robotic arm handling
  • 9. Multimodal Large Model+Color Blocks Back In Place
  • 10. Multimodal Large Model + Intent Prediction + Robotic Arm Gripping
  • 11. Text Large Model + YOLOv11 + Intelligent Garbage Classification
20.AI Model – Fun Applicationsnew
  • 1.AI Butler-Intent Inference
  • 2.AI Encyclopedia-Arithmetic Master
  • 3.AI Encyclopedia-You asked I Pointed
  • 4.AI Encyclopedia-Nutritional Analysis
  • 5.AI Encyclopedia-Problem Solving Expert
  • 6.AI Encyclopedia-English Spelling
  • 7.AI Butler-Garbage Sorting
  • 8.AI Top Chef
21.MoveIt2 Course
  • 1.MoveIt configuration
  • 2. MoveIt Usage
  • 3. MoveIt Drive Real Robot
  • 4. MoveIt Random Movement
  • 5. MoveIt Forward Kinematics Design
  • 6. MoveIt Inverse Kinematics Design
  • 7. MoveIt Cartesian Path
  • 8. MoveIt Scene Design
  • 9. MoveIt Trajectory Planning
  • 10. MoveIt Collision Detection
22.YOLOv11 Development Course
  • 1. YOLO Environment Setup
  • 2. CLI Usage
  • 3. Object Detection
  • 4. Instance Segmentation
  • 5. Pose Estimation
  • 6. Image Classification
  • 7. Oriented Bounding Boxes Object Detection
  • 8. Model Conversion
  • 9. Model Prediction
23.Linux Operating System
  • 1.Introduction to Linux system
  • 2.Ubuntu file system
  • 3.Ubuntu common commands
  • 4.Ubuntu common editors
  • 5.Ubuntu software operation commands
  • 6.Virtual machine installation
  • 7.SSH remote control
  • 8.VNC remote control
  • 9.Transfer files remotely
  • 10.Driver library and communication
  • 11.Capacity expansion and resource allocation
  • 12.Bind device ID
  • 13.Capacity expansion and resource allocation
  • 14.Update system software sources
  • 15.Set root user password
  • 16.sudo free password
  • 17.Connect to WiFi network
  • 18.View system version
  • 19.Customized service management
  • 20.Back up system image
24.GPIO Hardware Control Course
  • 1.GPIO description
  • 2.GPIO library installation
  • 3.GPIO reading
  • 4.GPIO output
  • 5.Serial communication
  • 6.I2C communication
25.OpenCV course
  • 0. Must Read!
  • 1. Introduction to Open Source CV
  • 2. Image reading and display
  • 3. Image writing
  • 4. Image quality
  • 5. Pixel Operation
  • 6.Image zoom
  • 7.Picture cut
  • 8.Picture pan
  • 9.Picture mirroring
  • 10.Affine transformation
  • 11.Picture rotation
  • 12.perspective transformation
  • 13.Grayscale processing
  • 14.Binary image
  • 15.Edge green detection
  • 16.Line segment drawing
  • 17.Rectangular circle drawing
  • 18.Text and picture drawing
26.ROS2 Basic Course
  • 1.Introduction to ROS2
  • 2.ROS2 install Humble
  • 3.ROS2 development environment
  • 4.ROS2 workspace
  • 5.ROS2 function package
  • 6.ROS2 node
  • 7.ROS2 topic communication
  • 8.ROS2 service communication
  • 9.ROS2 action communication
  • 10.ROS2 custom interface message
  • 11.ROS2 parameter service case
  • 12.ROS2 meta-function package
  • 13.ROS2 distributed communication
  • 14.ROS2 DDS
  • 15.ROS2 time related API
  • 16.ROS2 common command tools
  • 17.ROS2 rviz2 use
  • 18.ROS2 rqt toolbox
  • 19.ROS2 Launch startup file configuration
  • 20.ROS2 recording and playback tool
  • 21.ROS2 URDF model
  • 22.ROS2 Gazebo simulation platform
  • 23.ROS2 TF2 coordinate transformation
27. Advanced Visuals Course
  • 0. Must Read! Porting and Compilation
  • 1. QR Code
  • 2. Human Pose Estimation
  • 3. Object Detection
  • 4. AR Vision
  • 5. ROS + OpenCV Basics
28.Jupyter Lab Usage Course
  • 0.Read the document before operation
  • 1.Jupyter Lab environment construction
  • 2.Basic use of Jupyter Lab
  • 3.Jupyter Lab plug-in installation
  • 4.Basic use of Jupyter Widgets
29.Docker Course
  • 1.Docker overview and docker installation
  • 2.Common commands for docker image containers
  • 3.Docker images deeply understand and publish images
  • 4.Docker hardware interaction and data processing
  • 5.Start the Dofbot container
30.Python Programming Basics
  • 1.Python usage
  • 2.Use APT to install Python packages
  • 3.Python virtual environment
  • 4.GPIO Zero
  • 5.Pin output high and low levels
  • 6.Pin reads high and low levels
  • 7.Pin output PWM
Download
  • APP(iOS/Android)
  • Code
  • SystemFile
  • VM File
  • PC software
  • Instruction manual
  • Jetson_Boot_USB.tar.gz
  • More Annex
  • Tools
Download ZIP
FAQ
  • 1、Precautions for DIY Robotic Arm
  • 2、Why i can't robotic arm start normally
  • 3、When you control the No.1 servo, all servos will turn.
  • 4、How open VNC service on DOFBOT system
  • 5、Where can I get the URDF file?
  • 6、Gesture recognition cannot work normally.
  • 7、Write system image into U disk
  • 8、Write EMMC boot file

Welcome to DOFBOT-JetsonNANO repository

3.Embodied intelligent robot system architecture

Embodied Intelligent Robot System Architecture

1. Course Content

  1. Explanation of the large model inference architecture for AI embodied intelligent robots
  2. Introduction to basic concepts in the system to prepare for subsequent practical courses

2. System Composition

image-20251201142321815

3. AI Large Model Inference Architecture Diagram

The robot adopts a dual-model inference and dynamic feedback inference design in program architecture, improving the robot's processing capability when facing long-process complex tasks. Compared to single-model architectures, it possesses stronger system robustness. Here are several key concepts: decision-making layer large model, execution layer large model, task cycle, conversation history, which will be explained individually below.

yahboom_m3大模型推理架构.drawio

 

4. Large Model Inference Architecture Explanation

4.1 Dual-Model Architecture Principles

  • The robot's large model control system is designed based on text generation large models and multimodal large models, where the text generation large model serves as the decision-making layer, functioning as an upper-level task planner to decompose complex and abstract human instructions into tasks
  • The multimodal large model serves as the execution layer, responsible for receiving task steps generated by the decision-making layer and users' temporary instructions (generally simple instructions requiring the robot to end tasks, rest), supervising the progress of robot task execution and making real-time adjustments to execution actions, generating action function lists that the robot can parse and replies to users
  • The action function list contains pre-written basic action functions that can directly output parameters controlling robot movement.

4.2 Advantages of Dual-Model Inference Architecture

4.2.1 Decoupling of Decision Logic and Action Control

  • Multimodal large models are inferior to text generation large models in natural language semantic understanding and logical reasoning capabilities, and are prone to modal interference when executing complex tasks. Therefore, the system design decouples decision logic from action control.
  • Text generation large models focus on semantic understanding and task planning (such as parsing "Can you help me get the blue block from room A?" and breaking down task steps into "Record current position → Navigate to room A → Get current robot perspective image → Locate blue block coordinates → Grab blue block → Return to starting position → Put down blue block"), avoiding the complexity of traditional single models needing to process action details simultaneously during semantic parsing.
  • Multimodal large models are responsible for action generation and environment interaction (such as obtaining visual images to locate object coordinates, outputting action functions and parameters), reducing action logic confusion and large deviations caused by task complexity in single models.

4.2.2 Reducing Model Training Sample Complexity

When using single model reasoning, multimodal large models need to simultaneously perform "natural language understanding + environment perception + process decomposition + action function output", which easily leads to modal interference (language ambiguity or overly long instructions causing understanding errors). The dual-model approach uses phased processing, allowing the decision-making layer to focus on language space mapping and the execution layer to focus on vision-motion space mapping.

4.2.3 Flexible Extension

The decision-making layer and execution layer large models can be flexibly combined from various large models on the Alibaba Bailian large model platform (sometimes also called the Tongyi Qianwen platform). Through custom training samples and RAG knowledge bases, the models can adapt to tasks in different scenarios, greatly enhancing the generalization capability of AI embodied intelligent robots in different scenarios.

4.3 Decision-Making Layer Large Model

4.3.1 Role of Decision-Making Layer Model

  • The robot's decision-making layer large model uses the Tongyi Qianwen-Max series model by default.
  • The decision-making layer large model is mainly responsible for task planning. It can understand complex human instructions and decompose them into specific task steps.
  • Each task step corresponds to the minimum action that the robot can complete, and then the execution layer large model implements specific robot movements by calling API functions from this robot's action function library.

4.3.2 Robot Action Function Library (Simplified)

The robot action library defines all the minimum actions that the robot can actually execute. When planning task steps, the decision-making layer model will select appropriate actions from this library for arrangement and combination.

Basic Action Class

  • Turn on red light
  • Turn on green light
  • Turn on blue light
  • Turn on alarm
  • Turn off alarm
  • Turn off light

Robotic Arm Class

  • Adjust servo number x to y degrees

    Adjust the specified numbered servo to rotate to the specified angle

  • Robotic arm movement Description: Move the robotic arm end in the specified direction for a specified distance

  • Robotic arm upward movement

  • Robotic arm nod

  • Robotic arm shake head

  • Robotic arm dance Similar semantics: shake head, nod gesture.

  • Robotic arm applaud Similar semantics: applaud, applause gesture.

  • Robotic arm clamp, grasp object Similar semantics: pick up, pick up

  • Robotic arm put down item Description: Robotic arm releases the clamped item

  • Robotic arm gripper open Description: Adjust servo number 6 angle to 0 degrees

  • Robotic arm gripper close Description: Adjust servo number 6 angle to 180 degrees

  • Sort, clamp machine code number x Description: Sort and clamp the specified numbered machine code.

  • Track object, Description: Track the specified object

  • Remove machine code at specified height

  • Remove color blocks at specified height, Description: Automatically remove specified color blocks with height exceeding x cm, color values: 'red', 'green', 'blue', 'yellow'

  • Sort x type of garbage Description: Call garbage sorting function, sort x type of garbage, x values are 'rec', 'tox', 'wet' or 'dry'.

  • Move A to side of B Description: Change the spatial position of clamped object A to the left side of object B, Parameters: (x1,y1) are the pixel coordinates of the top-left corner of object A's outer bounding box, (x2,y2) are the pixel coordinates of the bottom-right corner of object A's outer bounding box, (x3,y3) are the pixel coordinates of the top-left corner of object B's outer bounding box, (x4,y4) are the pixel coordinates of the bottom-right corner of object B's outer bounding box, src represents the name of object A, if A is a color block, src represents the color of the color block, tar represents the name of object B, similarly, if B is a color block, tar represents the color of the color block; side is one of five directions: front, back, left, right, top, with values 1 representing front, 2 representing back, 3 representing left, 4 representing right, 5 representing top. Similar semantics include: clamp A to side of B, put A to side of B, place A to side of B

  • Color block stacking Description: Clamp the color blocks in the image according to the given order.

  • Put color blocks back to original position Description: Put color blocks back to their original position Similar semantics include: return color blocks to position, put color blocks back to original position.

  • Track object

  • Track machine code

  • Cancel tracking machine code

  • Cancel tracking object

  • Remember current position of object

  • Robotic arm pointing

  • Garbage sorting

  • Garbage cleaning

  • Sort color blocks according to given sorting order

Image Acquisition Class

  • Get current perspective image Description: Get current perspective image, used for observing environment or locating items.
  • Record x seconds video Description: Record video of specified duration, x represents duration, unit is seconds.
  • Play a guess object/small ball game Description: Record 20 seconds of video.
  • Video understanding Description: Parse the content of the recorded 20-second video

Other Class

  • Query weather
  • Calculate math problems
  • Guess object English
  • Tell jokes

4.4 Execution Layer Large Model

  • The robot's execution layer large model uses the Tongyi Qianwen-VL series model by default.
  • The execution layer large model is mainly responsible for generating action lists that control the robot's movements and replies to users. During the robot's execution of the action list, it continuously receives feedback on robot action execution results (success/failure) and visual images, and infers the next action to be executed based on whether the action execution state is successful or not
  • The execution layer large model acts as a supervisor, continuously supervising the progress of robot task execution steps, and thinking and judging the next action to be executed based on the result feedback and environment information after the robot executes actions, until the task is successfully completed or ended early due to special circumstances.

 

4.4.1 Task Cycle

  • In a new task cycle, user instructions first go through the decision-making layer large model, then through the execution layer large model. If the execution layer large model determines that the robot has completed all task steps, it will enter waiting state. At this time, subsequent user instructions will be directly given to the execution layer large model.
  • For example: when the user requests to end the current task and let the robot rest, the robot will reset conversation history and robotic arm state, start a new task cycle, and user instructions will start executing from the decision-making layer large model. The following is a waiting state diagram:

机器人的等待状态.drawio

 

4.4.2 Historical Context

The robot maintains a conversation history context in its local program. The conversation history context contains user instructions, task steps generated by the decision-making layer model, action lists generated by the execution layer model, and robot feedback status information. Each time the robot requests the execution layer large model, it sends the complete conversation history. Therefore, the execution layer large model can know the progress of robot task execution. The execution layer large model will combine the conversation history context to infer the next action that should be executed. In summary, the execution layer large model will deduce the next future action based on the sum of past states.

 

对话上下文历史.drawio

 

Under normal circumstances, the execution layer large model will determine task completion progress based on conversation history. When it determines that the robot has completed all task steps, it will enter waiting state, waiting for user temporary instructions. Temporary instructions will not go through the decision-making layer large model but will be directly passed to the execution layer large model. There are three situations that will cause the robot to clear the conversation context history, end the current task cycle, and start a new task cycle.

  • Situation 1: User actively requests to end the task cycle. In waiting state, when the user says something like "You can rest now" or "You can step down", the execution layer large model will call the finish_dialogue() function to end the current task cycle, let the robot reset conversation history, and start a new task cycle. The same applies to the following situations.
  • Situation 2: The robot fails twice consecutively when executing a certain action. If an action fails, the execution layer large model will control the robot to retry at most once. If it fails again, the execution layer large model will control the robot to end the task cycle early and start a new task cycle.
  • Situation 3: When the robot encounters an impossible task, for example, when the user asks the robot to go to a location not mentioned in the "map mapping", the robot will request to end the task cycle early and inform the user that this task cannot be completed.

 

提前结束任务情况.drawio

 

4.4.4 Robot Action Function Library

The API functions in the robot action function library are the bridge for large models to control the robot's interaction with the real world. These API functions define the minimum actions that physical robots can complete in the physical world. The principle of API functions is to control the underlying hardware of physical robots through the ROS2 system to complete various functions.

 

动作函数库

 

All action functions and corresponding functions are shown in the following table:

Function NameParametersImplemented FunctionCall Command
arm_dance()-Trigger robotic arm dance actionRobotic arm dance
arm_up()-Robotic arm upward liftRobotic arm upward
arm_down()-Robotic arm downward movementRobotic arm downward
arm_nod()-Robotic arm nodNod
arm_shake()-Robotic arm shake headShake head
arm_applaud()-Robotic arm applaudApplaud
grip_pose()-Robotic arm clamp object postureRobotic arm adjust to clamp posture
track_pose()-Robotic arm track object postureRobotic arm adjust to track posture
cancel_KCF_follow-Cancel tracking objectCancel tracking object
grasp_obj(x1, y1, x2, y2)(x1, y1, x2, y2) Top-left and bottom-right point coordinates of target object's outer bounding boxRobotic arm grasp objectGrasp xxx
remove_obj(x1, y1, x2, y2,color)(x1, y1, x2, y2) are the top-left and bottom-right point coordinates of the outer bounding box of the top color block of obstacle color block. color represents the color of obstacle color block.Remove obstacle color blockRemove x color block
putdown()-Robotic arm put down already clamped itemPut down xxx
apriltag_sort(x)x:Machine code numberSort out specified numbered machine codeSort out x number machine code
track(x1, y1, x2, y2)(x1, y1, x2, y2) Top-left and bottom-right point coordinates of target object's outer bounding boxTrack specified object in field of viewTrack xx
apriltag_remove_higher(x)x: HeightRemove machine code at specified heightRemove machine code higher than x cm
color_remove_higher(color, target_high)color:Color target_high:HeightRemove color blocks at specified heightRemove color blocks higher than target_high cm of color color
garbage_sort(type_)type_: Garbage type to be sortedSort specified type of garbageSort recyclable garbage
change_pose(self, x1, y1, x2, y2,src,tar,side,tar_size)x1, y1, x2, y2: Represent the top-left and bottom-right corner coordinates of the top outer bounding box of target placement color block; src represents the color of target transport color block, tar represents the color of target placement color block, side represents placement direction, tar_size represents the height of placement color blockMove color block to direction of another color blockPlace blue block on top of yellow block
record_video(time_)time_ represents video recording durationRecord videoRecord x seconds of video
apriltag_follow(target_id)target_id: Machine code IDTrack machine code with specified IDTrack x number machine code
compute_pose(x1,y1,x2,y2,name)x1,y1,x2,y2: Top-left and bottom-right corner coordinates of outer bounding box of color block whose position needs to be recorded, name represents the color of color block whose position needs to be recordedRecord current position of specified color color blockRecord current position of x color block
compute_pose_order(x1,y1,x2,y2,name,order)x1,y1,x2,y2: Top-left and bottom-right corner coordinates of outer bounding box of top color block, name color of top color block, order represents color block stacking order from top to bottomRecord position of each color block in stacked color blocksRecord current position of color blocks on desktop
return_to_orin(name)name:Represents the color of color block that needs to return to positionPut specified color color block back to original positionPut x color block back to original position
light_on(color)color:LED light colorTurn on LED lightTurn on * color light
light_off()-Turn off LED lightTurn off light
beep_on()-Turn on buzzerBuzzer alarm
beep_off()-Turn off buzzerTurn off buzzer
adjust_joint(joint_id,angle)joint_id:Servo ID,angle:Servo angleSet servo angleSet servo number x to y degrees
gripper_open()-Open gripperOpen gripper
gripper_close()-Close gripperClose gripper
color_back_to_orin()-Publish color block return to position orderPut color blocks on desktop back to original position
grasp_from_rm_list(color)color: Color block colorGrasp color block from clamp listGrasp x color block in clamp list
arm_move(Dir,Dist)Dir:Direction of robotic arm end adjustment, values are up, down, left, right, front, back, Dist distance of robotic arm end adjustment, unit is centimetersAdjust position of robotic arm endRobotic arm adjust x by y cm
point_to(x1, y1, x2, y2)x1, y1, x2, y2:Top-left and bottom-right corner coordinates of outer bounding box of pointed objectRobotic arm point to objectRobotic arm point to x
garbage_sort_all()-Garbage label code sortingClean garbage on desktop
grasp_from_down_list(color)color:Color block colorGrasp color block from placement listGrasp x color block from placement list
check_remove(color)-Check if specified color block exists in remove listCheck if x color block exists in remove list
seewhat()-Take a photo of robot's current perspective and upload to execution layer large modelObserve environment
video_understanding()-Understand video contentWhat is the content in the video just recorded
finish_dialogue()-Reset history context, start new task cycle-
wait(x)x:Time, unit: secondsWait for a period of time, execute no operationsWait x seconds
finishtask()-Automatically called when robot completes task, used to stop feeding back status to execution layer model-

5. Application of Voice Models in the System

5.1 Voice Recognition

Since the decision-making layer and execution layer large models are text generation models and visual multimodal models respectively, they cannot directly receive user voice information. Therefore, voice recognition large models are needed to convert user voice commands into corresponding text before handing them to AI large models.

语音转文字.drawio

 

 

5.2 VAD Voice Activity Detection

VAD (Voice Activity Detection) is a technology that automatically identifies speech segments and non-speech segments (such as silence, noise) in speech signals. It locates the start and end positions of speech from audio streams and filters out invalid background sounds.

In subsequent practical courses, when the user uses the wake-up word "Hello Xiaoya" to wake up the robot, it will enter VAD voice activity detection. The system will automatically detect the user's speaking duration and save effective sound segments as WAV audio files, then give the audio files to the voice recognition model to convert into text.

5.3 Voice Synthesis

The text replies generated by the large model for users are converted into audio through voice synthesis models, and then played by hardware speakers.

 

语音合成drawio

 

RAG retrieval enhancement and model training samples
Embodied intelligent functions core source code

COMPANY

  • About us
  • Team Style
  • Blog

LEARNING & EXPLORATION

  • Tutorials
  • Edge AI hardware
  • Educational robots
  • Embedded intelligent hardware

WHERE TO BUY

  • Yahboom Online Store
  • Amazon
  • Alibaba
  • AliExpress
  • Mercado

TECHNOLOGY SUPPORT

  • Email: support@yahboom.com

BE A DISTRIBUTOR

  • Email: sales@yahboom.com
QR Code

Copyright © 2017-2026 Yahboom. All Rights Reserved.

EN/中文