• sales

    +86-0755-88291180

Chapter 10 of KitiBot-Microbit: Ultrasonic Obstacle User Guide

Chapter 10 Ultrasonic Obstacle

In this chapter we talk about how to use ultrasonic sensor and use ultrasonic for obstacle.

Generally, our ears cannot hear sounds above 20 kHz (sound was generated by vibration, 10 kHz, which is equivalent to 20 thousand vibrations per second, which is 20,000 times). Sonic waves produced above 20 kHz are called "ultrasounds". Due to their amblyopia, bats flying at night emit such ultrasound. Bats rely mainly on ultrasound to locate any avoidable obstacle on their way. Sound waves are emitted by the bat's throat and received by their ears, according to the received sound waves. They can determine the position of the front object. Ultrasound sensor invention is based on the same method


Ultrasonic sensor is mounted on the cat face, looks like two eyes of the cat, one eye is receiver and another is sender. With this ultrasonic sensor, Robot can detect the distance of obstacle in the front.

Read value of ultrasonic sensor

: Using Ultrasonic block, we can read distance value (integer) from ultrasonic sensor.

We make a project to read ultrasonic value and display to LED matrix


Show distance value with bar graph

Light more leds if obstacle is farer, less leds if closer


Obstacle detecting

We use ultrasonic sensor to detect obstacle and make robot stop when obstacle detected.


Ultrasonic sensor keeps detecting distance of obstacles in front, if distance is farer than 15cm, robot move forward, and stop if distance detected is less than 15cm. Note that you need to set servo degree to 90 on start, make sure ultrasonic sensor faces forward.

Turning when obstacle detected

We modify the code, let robot turn right when obstacle detected.


Turning according to distance

Here we add servo control code. Robot will rotate to both side to detect distance (obstacle) and turn to the farer side when obstacle is detected in front.

https://cdn.static.spotpear.com/uploads/picture/learn/micro-bit/micro-bit-kit/chapter-10-of-kitibot-microbit/chapter-10-of-kitibot-microbit-11.gif

Variables rdis and ldis are used to save distances of right side and left side. By comparing rdis and ldis, robot can judge which side is farer. Pause are added because servo need times to rotate.

TAG: ESP32-C6 2.16inch AMOLED Display AI Development Board 480×480 2.16 inch TouchScreen Deepseek CAN FD Sipeed Lichee Tang Nano1K FPGA MINI Development Board GW1NZ-1 Raspberry Pi OpenWrt Tutorial 2 DeepSeek XiaoZhi AI Voice Chat Robot BOX ESP32-S3 Development Board 3.5 inch QSPI LCD N16R8 Touchscreen Display 6-Axis /Camera /SD ESP32-S3 A7670E 4G development board supports LTE Cat-1/2G/GNSS positioning/WiFi/Bluetooth Raspberry Pi 4B ESP32 C6 Development Board 1.47 inch LCD Display Screen ST7789 For Arduino WiFi6/LVGL/HMI Onborad SD-Port/RGB-LED Gyroscope Sensor Raspberry Pi 5 PCIe to M.2 NVMe SSD Adapter Board HAT Pi5-PCIe-MPS2242-2230-Board ESP32-S3-Zero Power Manager Module ADXL354C Raspberry Pi 5 PCIe to 4-CH M.2 NVMe 4-Ports SSD Board HAT Pi5 Four-Times ESP32 C6 Development board 1.9 inch LCD display 1.9inch Screen 172×320 With SD slot RGB LED QMI8658 6-Axis-Sensor ST7789 CST816 Raspberry Pi display Raspberry Pi 10.1 inch DSI MIPI LCD TouchScreen Display 10.1inch 720x1280 For Luckfox Lyra RK3506/ESP32-P4/Luckfox Omni3576 ESP32 S3 5 inch LCD Development Board 800x480 TouchScreen Display TVBOX LVGL HMI Sensor CAN RS485 ESP32-S3 7inch LCD Display 7 inch TouchScreen 7B 1024×600 N16R8 CAN RS485 Sensor Luckfox Pico Camera MIS5001 5MP wide-angle lenses‌ For RV1106/Pro/MAX/Ultra (Not For RV1103 Pico)