yahboom
HomeLearn
Solution
Blog
Online Store
About Us
EN/中文
Raspbot📖
1.First Trial and Installation
  • 1.1 Installation video
  • 1.2 First Trial
2.Remote control course
  • 2.1 APP control car
  • 2.2 IR control car
3.Preparation
  • 3.1 Preparation
  • 3.2 Run a code on JupyterLab
  • 3.5 TF card expand capacity
4.OpenCV Basic course
A.Getting started with OpenCV
  • 1.Introduction of OpenCV
  • 2.OpenCV image read and display
  • 3.OpenCV image write
  • 4.OpenCV image quality
  • 5.OpenCV pixel operation
B.OpenCV Geometric transformat
  • 1.Picture Zoom
  • 2.Picture Cut
  • 3.Picture Shift
  • 4.Picture Mirroring
  • 5.Affine Map
  • 6.Picture Rotation
  • 7.Perspective Transformation
C.OpenCV picture processing
  • 1.Grayscale processing
  • 2.Image Binarization
  • 3.Edge detection
  • 4.Drawing line segment
  • 5.Drawing rectangle circle
  • 6.Drawing text picture
D.OpenCV image beautification
  • 1.Histogram of color pictures
  • 2.Histogram equalization
  • 3.Image restoration
  • 4.Brightness enhancement
  • 5.Skin whitening
  • 6.Gaussian mean filtering
  • 7.Median filtering
E.OpenCV machine learning
  • 1.KNN recognition of handwritten numbers
  • 2.CNN recognition of handwritten numbers
  • 3.SVM recognition of handwritten numbers
5.Hardware Control course
  • 5.1 Drive buzzer
  • 5.2 Drive motor
  • 5.3 Drive servo
  • 5.4 Ultrasonic ranging
  • 5.5 Ultrasonic avoid
  • 5.6 Ultrasonic+IR avoid
  • 5.7 Tracking
  • 5.8 Restricting
  • 5.9 Drive LED
  • 5.10 IR control test
  • 5.11 IR control car
6.AI vision course
  • 6.1 Driver camera
  • 6.2 Color recognition
  • 6.3 HSV value test
  • 6.4 Camera color tracking
  • 6.5 Car color tracking
  • 6.6 Tensorflow object recognition
  • 6.7 QR code recognition
  • 6.8 QR code control
  • 6.9 Face detection
  • 6.10 Face tracking
  • 6.11 Autopilot
7.Battery and charging
  • Battery and charging
Download
  • APP(iOS/Android)
  • Code
  • Download image
  • Instruction manual
  • More Annex
Download ZIP
FAQ
  • 1、Raspbot-Raspberry Pi 4b version desktop connection WiFi method
  • 2、Can't connect your home WiFi
  • 3、How to check IIC function on Raspbot
  • 4、Gesture recognition cannot work normally.
  • 5、How to write image file into SD card

Welcome to Raspbot repository

5.10 IR control test


1. In order to avoid the interference of sunlight on the infrared sensor, we must carry out the experiment indoors.

2. During remote control, the infrared remote control needs to be aimed at the infrared receiver on the expansion board.

1. Learning target

In this course, we mainly learn how to make the infrared receiver on the car read the value of the infrared remote control.

2. Principle of experimental

Infrared sending and receiving codes are divided into: guide code, user code, user reverse code, operation code(data code), operation reverse code(data reverse code).

Below we will introduce these kinds of encoded waveform:

For the part of infrared transmission, the infrared remote control we provided has been set up. Therefore, we do not explain the knowledge about infrared transmission here, but mainly explain some points of infrared reception.

We mainly use the NCE protocol:

The protocol stipulates that the lower bits are transmitted first.

A string of information first sends a 9ms high pulse of AGC (Automatic Gain Control) . Then, send a 4.5ms low level. Next, send four-byte address code and a command code. These four bytes are : Address code, address reverse code; command code; command reverse code.

image.png 

1)Guide code:The guide code defined by the uPD6121G of the NEC protocol is 9ms high level+ 4.5ms low level, waveform as shown in the figure below:

image.png 

2)User code and operation code: The user code and operation code defined by the uPD6121G of the NEC protocol is:

"Logic 0" : 0.56ms high level + 0.565ms low level;

"Logic1" : 0.56ms high level + 1.685ms low level;

Waveform as shown below :

image.pngimage.png 

Logic 0 --waveform               Logic 1--waveform

The wave output after passing through the infrared receiver, as shown below:

image.png 

If you keep pressing that button, a series of messages can only be sent once. If you keep pressing, the repeating code is sent with a period of 110ms. Waveform as shown below.

image.png 

The repeat code is composed of a high AGC level of 9ms, a low level of 2.25ms, and a high level of 560us, until the key is released. Waveform as shown below:

image.png 

The process of infrared receiving and controlling the car is as follows:

1) Generate a falling edge, enter the interrupt function of external interrupt 0, and check whether the IO port is still low level after delay time. If it is low level, wait for the low level of 9ms to pass. Wait for the 9ms low level to pass, and then wait for the 4.5ms high level to pass.

2) Start receiving the 4 sets of data transmitted, wait for the low level of 560us to pass, and detect the duration of the high level. If it exceeds 1.12ms, it is high level (the duration of the high level is 1.69ms, the low level Duration is 5.65ms.)

3) Detect whether the received data is the same as the data reverse code (operation reverse code), and wait for the same data. If it is the same, it is proved that the corresponding data sent by the infrared remote control is received. Then, the car moves according to the function set in the program.

3. Coding method

In this course, we use BOARD coding method.

According to the hardware interface manual, we know that the Raspberry Pi pin that the infrared receiving sensor is connected to is 36.

The pin comparison table of Raspberry Pi is shown below.

image.png 

image.png 

4. About code

Path: /home/pi/Yahboom_project/Raspbot/2.Hardware Control course/09.IR control test/IR control test.ipynb

1) Import time and GPIO library

image.png image.png

2) Set the GPIO coding mode, set the GPIO of the infrared receiver to the pull-up input mode

image.png 

3) According to the NCE protocol, it receives the pilot code, address code, address inversion, signal code, and signal inversion of the infrared signal.

image.png 

image.png 

4) Determine whether the button is released according to the repeated signal

image.png 

5. Running code

Click the button shown in the figure below to run the program on the Jupyter Lab interface

image.png 

6. Experimental phenomena

When we press the infrared remote control, the code value of the button will be printed out.


Drive LED
IR control car

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/中文