Welcome to Building:bit Superkit repository
3.1 Avoiding car
Avoiding car
Avoiding car1. Learning objectives2. Building blocks3. Sensor wiring4. Code analysis5. Write and download the program5. Experimental phenomenon
1. Learning objectives
In this course, we mainly learn how to achieve obstacle avoidance for small flying cars through Python programming.
2. Building blocks
For the steps of building blocks, please refer to the installation drawings or building block installation album of [Assembly Course]--[Small flying car obstacle avoidance] in the materials.
3. Sensor wiring
The motor wiring on the left side of the car is inserted into the M1 interface of the Super:bit expansion board, and the black line is close to the battery side;
The motor wiring on the right side of the car is inserted into the M3 interface of the Super:bit expansion board, and the black line is close to the battery side;
The ultrasonic wave is connected to the P1P2 interface.

4. Code analysis
For the program of this course, please refer to the Avoiding-car.py file.
from microbit import *import WOM_Sensor_Kitimport superbitFirst, import the libraries needed for this lesson from microbit: the superbit library is used for the superbit expansion board; the WOM_Sensor_Kit library is used for the sensor
xxxxxxxxxxdisplay.show(Image.HAPPY)Display the smiley face pattern on the microbit dot matrix;
xxxxxxxxxxwhile True:if WOM_Sensor_Kit.WOM_ultrasonic(pin2, pin1) < 10 :superbit.motor_control(superbit.M1, 255, 0)superbit.motor_control(superbit.M3, 0, 0)else:superbit.motor_control(superbit.M1, 100, 0)superbit.motor_control(superbit.M3, 100, 0)Detect the distance ahead in an infinite loop. If the ultrasonic sensor measures a distance less than 10 cm, the motor at the M1 interface rotates forward at a speed of 255 and the motor at the M3 interface stops; otherwise, both motors rotate forward at a speed of 255 at the same time.
5. Write and download the program
- Open the Mu software and enter the code in the editing window. Note! All English and symbols should be entered in English mode, use the Tab key for indentation, and the last line ends with a blank program.
- Click the thumb 'Check' button to check if there are any errors in our code. If a cursor or underline appears in a line, it means a syntax error. Please check and modify it. If there is no error, the lower left corner will prompt that there is no problem with the detection.

- Click the ‘REPL’ button to check whether the Superbit library has been downloaded. If not, please refer to [Preparation before class] --> [2.4 Python Programming Guide].

- After the program is written, connect the computer and the microbit mainboard with a microUSB data cable, and click the ‘Flash’ button to download the program to the micro:bit mainboard. (You need to click the ‘REPL’ button again to turn off the import library file function before you can download the program normally).

- If the download fails, please confirm whether the microbit is properly connected to the computer via the microUSB data cable and the Superbit Python library has been imported.
5. Experimental phenomenon
After the program runs successfully, the microbit dot matrix displays a smiley face. When the ultrasonic wave detects that the obstacle is less than 10cm away, the flying car turns right to avoid the obstacle. If there is no obstacle within 10cm, it will go straight.