KJIzPp

Liangshan School Intelligent Car Design

 
Overview

1. Project Introduction:

Based on the official tutorial, learn and replicate the intelligent car based on LCSC's Liangshanpai model.
Problem Analysis

: 1.1. Car Function Introduction:

The Liangshanpai intelligent car is equipped with two LED lights at the front, one on each side, which can be used to simulate the headlight status when driving or passing other vehicles;
the Liangshanpai intelligent car has two independent buttons, KEYS and KEYM, which can be used to start the car and switch between driving modes;
the Liangshanpai intelligent car is equipped with a buzzer, which can be used to sound an alarm when encountering obstacles, and its output frequency can also be changed using a timer to play music;
the Liangshanpai intelligent car is equipped with four motor drives and four N20 motors, enabling PWM output and speed control;
the Liangshanpai intelligent car is equipped with five-channel infrared tracking, which can be used to follow black lines. Learn the use of comparator circuits and implement...
The Liangshanpai Smart Car features a tracking function; it is equipped with an HCSR04 ultrasonic module interface circuit, which allows for ultrasonic obstacle avoidance by learning the module's principles and underlying driver code;
the Liangshanpai Smart Car utilizes the ADC function on the development board to detect the car's battery level, facilitating timely charging;
it provides an HC-05 Bluetooth module interface circuit, enabling wireless remote control of the car via a mobile Bluetooth app;
it offers a camera module interface circuit, which can be used to learn about camera recognition;
and it provides a 2.4G wireless module interface circuit, allowing for remote control of the car.



1.2. Application Scenarios of the Car
This tutorial is suitable for electronics enthusiasts and beginners to learn basic projects;
it is suitable for embedded courses, using a smart car in conjunction with the LCSC Liangshanpai development board to integrate embedded courses;
it is suitable for university course design and graduation project reference cases, allowing students to complete smart car projects with specific functions according to course design requirements using the LCSC Liangshanpai core board;
it is suitable for students and related personnel to learn about related smart car competitions;

2. Overall Design Scheme The overall design scheme
  of the Liangshanpai smart car system framework diagram is shown in Figure 2-1. The power supply circuit uses two 7.4V lithium batteries to power the system, and the voltage is stepped down to 5V by a step-down chip to power the microcontroller system. The LCSC Liangshanpai core board is connected to the LED lights, button circuit, obstacle avoidance circuit, line tracking circuit, ADC voltage acquisition circuit, Bluetooth remote control circuit (wireless remote control function), buzzer, and motor drive circuit on the smart car expansion board.


                                                                           Figure 2-1 Overall System Framework Diagram


3. Circuit Design
3.1 Power Input Circuit
3.1.1 Power Design Requirements
    We analyzed the power supply circuit of the intelligent car system. By consulting the chip manual and the schematic diagram of the LCSC Liangshanpai core board, we learned that the maximum supply voltage of the motor drive chip RZ7899 does not exceed 25V, the LCSC Liangshanpai core board is powered by 3.3V (compatible with 5V), the ultrasonic module is powered by 5V, and the other peripheral modules are all powered by 3.3V. Based on this requirement, we can start selecting the power supply. Here, I chose a 7.4V rechargeable lithium battery. You don't have to follow my example; choose according to your needs.
3.1.2 Intelligent Car Power Supply Schematic Diagram







                                                                                                  Figure 3-1 Power Circuit Schematic Diagram

3.1.3 Power Circuit Design Analysis
    The power input interface P3 is a battery holder. Two 3.7V lithium batteries are connected through the battery holder to power the car. After the power supply enters, it passes through an HE6250MPR step-down chip. This chip has a maximum input voltage of 15V and can output a fixed 5V voltage to power the microcontroller and peripheral devices. The motor driver chip is directly powered by a 7.4V battery. D1 is a Schottky diode, model SS43, used to prevent reverse polarity connection of the power input, providing protection. LED1 is the power indicator light; it illuminates when the power switch SW1 is turned on, indicating system power is supplied. C1 and C2 are 10uF capacitors, primarily used to buffer the potentially large current flow during power-on.


3.2 Minimum System Circuit for Microcontroller
    Undoubtedly, we use the LCSC Liangshanpai core board as our minimum system board. The LCSC Liangshanpai core board uses the GD32F470 main control chip, which has extremely high computing performance, with a maximum processor frequency of 200MHz, and provides a complete DSP instruction set, parallel computing capabilities, and a dedicated floating-point unit (FPU) to meet advanced computing needs. Specific information and details about the LCSC Liangshanpai core board will not be discussed here; please refer to the LCSC development board official website for more information.


3.3 Motor Drive Circuit
3.3.1 Motor Drive Circuit Schematic Diagram






                                                                                                                Figure 3-2 Motor Drive Circuit Schematic Diagram


3.3.2 Motor Drive Circuit Design Analysis
    First, we all know that the current of the microcontroller's I/O ports is very limited. If the motor is directly connected to the microcontroller's I/O ports, it will not be able to drive the motor properly. Therefore, we must use a motor drive chip to drive our motor assembly. Here, I choose the RZ7899 motor drive chip. The RZ7899 is a DC bidirectional motor drive circuit suitable for automatic valve motor drives, electromagnetic door lock drives, etc. This circuit features excellent anti-interference capabilities, minimal standby current, and low output resistance. It also has a built-in diode to release reverse inrush current from inductive loads.
    It controls the motor's forward, reverse, and braking functions through two logic input terminals, BI and FI. By connecting BI and FI to the microcontroller's I/O ports and changing the microcontroller's I/O port level, the output pin level of the chip's control terminal can be altered, allowing for forward/reverse rotation, stopping, and braking control of the motor. The control principle is very simple, making it convenient to use and capable of meeting the high current requirements of DC motors.
    During code debugging, the pin function table and input/output truth table below can be referenced. By connecting the BI and FI pins to the microcontroller's timer channel pins, the microcontroller's timer PWM output function can be used to control the motor speed, thereby changing the speed of the intelligent vehicle.


Chip features include:


minimal standby current (less than 2uA); wide operating voltage range (3.0V~25V);


emergency stop function; and overheat protection.



                                                                           Figure 3-4 Ultrasonic Module Interface Diagram


3.5.2 Obstacle Avoidance Circuit Design Analysis
    The principle of ultrasonic ranging is that the ultrasonic transmitter emits ultrasonic waves and starts timing at the same time. The ultrasonic waves propagate in the air. When they encounter an obstacle, they will send a signal back to the ultrasonic receiver. The ultrasonic receiver stops timing immediately after receiving the signal. At this time, there will be a time t. The speed of ultrasonic waves in the air is 340m/s. The distance to be measured can be calculated by the formula s=340 xt / 200.
HC-SR04 Ultrasonic Ranging Module Working Principle:


Operating voltage: DC 5V;


Ranging is triggered by I/O port. The microcontroller sends a high-level signal of at least 10us to the Trig pin of the ultrasonic module to trigger its operation.


The module's transmitting probe automatically sends eight 40KHz square wave signals and automatically detects whether a signal is returned.


If a signal is returned, a high-level signal is output through the I/O port of the microcontroller connected to the Echo pin. The duration of the high-level signal is the time from ultrasonic transmission to return.


Based on the speed of sound in air being 340 meters per second, the measured distance can be calculated.


 

It has overcurrent protection, current clamping, and short-circuit protection functions. Package size: SOP8.

3.4 Tracking Circuit
3.4.1 Tracking Circuit Schematic Diagram


                                                                                                             Figure 3-3 Tracking Circuit Schematic Diagram


3.4.2 Tracking Circuit Design Analysis
    The design of the tracking circuit utilizes the principle that infrared light reflects differently when encountering ground of different colors. The tracking circuit uses an LM393 voltage comparator and an ITR9909 infrared transistor. The ITR9909 integrates an infrared emitter and receiver. The tracking principle involves connecting pin 1 of the voltage comparator to a microcontroller pin, configuring the I/O to input mode. When pin 1 of the voltage comparator outputs a high level, it indicates that the infrared light is absorbed, a black line is detected, LED6 lights up, and the microcontroller I/O reads the high level.
The principle of infrared tracking is based on the reflection of infrared light at different colors. Detecting


a black line involves the infrared emitter emitting light to the ground; when the infrared light encounters a white ground, it is reflected, and the infrared receiver receives the reflected light. After passing through the voltage comparator, the output is low.


Detecting a black line involves the infrared emitter emitting light to the ground; when the infrared light encounters a black ground, it is absorbed, and the infrared receiver does not receive the reflected light. After passing through the voltage comparator, the output is high.


3.5 Obstacle Avoidance Circuit
3.5.1 Obstacle Avoidance Circuit Schematic Diagram
    The obstacle avoidance circuit uses an ultrasonic HC-SR04 module. The type of this module can be selected and purchased independently. A physical diagram is shown below.
      

Below is the ultrasonic module interface on the expansion board of the intelligent car.




Figure 3-4 Ultrasonic Module Interface Diagram














3.5.2 Obstacle Avoidance Circuit Design Analysis
    The principle of ultrasonic ranging is that the ultrasonic transmitter emits ultrasonic waves and starts timing at the same time. The ultrasonic waves propagate in the air. When they encounter an obstacle, they will send a signal back to the ultrasonic receiver. The ultrasonic receiver stops timing immediately after receiving the signal. At this time, there will be a time t. The speed of ultrasonic waves in the air is 340m/s. The distance to be measured can be calculated using the formula s=340 xt / 200.
Working principle of HC-SR04 ultrasonic ranging module


Working voltage: DC 5V;


The ranging is triggered by I/O port. The microcontroller sends a high-level signal of at least 10us to the Trig pin of the ultrasonic module to trigger the ultrasonic module to work;


The transmitting probe of the module will automatically send 8 40KHz square wave signals and automatically detect whether there is a signal return;


If there is a signal return, the microcontroller's I/O port is connected to the Echo pin to output a high level. The duration of the high level is the time from the ultrasonic wave to the return;


According to the speed of sound in the air, which is 340 meters/second, the measured distance can be calculated;



Figure 3-5 Working timing diagram of ultrasonic HC-SR04 module


3.6 Other circuits
3.6.1 LED car light and button circuit
(1) One end of the LED light is connected to the microcontroller's IO port. The LED light is controlled by the high and low levels of the microcontroller's IO. Two driving methods are designed here. The circuit of the LED car light is lit at a low level, and the circuit of the button indicator light is lit at a high level. The resistance can be calculated by combining the required brightness of the light and Ohm's law. For example, if the indicator light of the button does not need to be too bright, the resistance should be 1KΩ, which is larger. If the LED car light needs to be brighter, the resistance should be 100Ω, which is smaller.
(2) The circuit design principle of the independent button here is to connect one end of the button to the microcontroller IO port and the other end to ground. When the button is pressed, a low level is read; when the button is released, a high level is read. Note that the IO port needs to be configured as a pull-up input. Of course, you can also add a pull-up resistor to pull the level of the IO port high, so that it does not need to be configured as a pull-up input.


                                                                                        Figure 3-6 LED light circuit schematic diagram






3.6.2 Buzzer and ADC voltage acquisition circuit
(1) Buzzer circuit: The buzzer used here is an active buzzer. The active buzzer has its own oscillation source. As long as it is powered on, it will make a sound. The circuit design principle here is to use a PNP type transistor as a switch. By adjusting the high and low levels of the microcontroller IO port, the buzzer can be controlled. The reason for using a transistor is that we all know that the current driving capability of a microcontroller is relatively small, and it cannot work properly if it directly drives the device. Therefore, the emitter of the transistor is used to guide the current into the collector, instead of directly applying the microcontroller's I/O port to the buzzer.


When the I/O port outputs a high level, the emitter voltage is not much greater than the base voltage, the transistor is not conducting and is in the cutoff state, so the buzzer does not make a sound;


when the I/O port outputs a low level, the emitter voltage is much greater than the base voltage, the transistor conducts, the current flows from the emitter into the collector, and the buzzer makes a sound.






                                                                                                        Figure 3-7 Buzzer circuit schematic


(2) ADC voltage acquisition circuit: First, before using the ADC, we need to know its bit number, i.e., its precision. We can find out from the datasheet that our ADC is 12-bit, and through calculation, we know that the precision is 2^12-1, which equals 4095. This means that the precision range that the ADC can represent is 0~4095.




                      Figure 3-8 Schematic diagram of ADC voltage acquisition circuit


4. Schematic diagram and PCB design
4.1.1 Overall schematic diagram design

                                                                              Figure 4-1 Overall schematic diagram


4.1.2 Schematic diagram design precautions
(1) When selecting components, prioritize components from the basic library and those with more inventory;
(2) Keep the shipping warehouses of different components consistent as much as possible;
(3) Components with different packages have different sizes. It is recommended that beginners or those with weak soldering skills choose through-hole packages or 0805 packages. Of course, you can also directly use SMT surface mount technology;
(4) Minimize the types of components. For example, if an 800Ω resistor and a 1000Ω resistor can be substituted for each other without affecting the circuit, choose one of them;
(5) After the schematic diagram is designed, it should be organized. Each module should be enclosed in a grid. This will make the overall structure of the schematic diagram clearer and easier to read;
4.2 PCB design
4.2.1 PCB design







 







Figure 4-2-1 PCB diagram


4.2.2 Car PCB outline design

Figure 4-2-2 Car 3D diagram


4.2.3 PCB Design Considerations
(1) Power and signal traces should be laid out strictly according to the schematic diagram, following the direction of signal current flow. Even if they are all connected without errors, the order should be considered. They should go through A first, then B, and finally C. They should not go directly from A to C to B. This is especially important for beginners.
(2) Avoid right angles when routing. Generally, take a 45-degree route or an arc. In high-frequency circuits, do not take right angles or acute angles when turning to prevent signal reflection when the high-frequency signal turns.
(3) The width of the power line should be wider than the signal line. GND is generally done by copper pouring.
(4) Under normal circumstances, the width of the conductor should not be less than 10mil. Generally, the power line is set to a width of 25mil or more.


5. Software Design
5.0 Code Standards
    Have you ever encountered a situation where you feel that you can hardly understand your own code or even forget the programming logic when you read it again after a long time? When you send your code to others, it is often criticized? You name variables a, b, c directly, and then you are confused when you look at it again?
    Many of us have made some of the mistakes mentioned above, highlighting the crucial role of coding standards in software design. Developing good coding habits helps avoid these errors, allowing you to write code that flows smoothly and is easy to read. Below, I will discuss some coding standards for your reference.


Modular programming: Separate modules into independent .c and .h files for quick code portability.


Add appropriate comments: Add necessary comments to header files, functions, variables, and control logic.


Variable and function naming conventions: Variable and function names should be self-explanatory.


Maintain standardized code formatting: Indent where necessary and add parentheses where required.
5.1 Partial Code



5.1.1 Tracking Code



track.h


1) The track.h header file mainly contains referenced header files, macro definitions, and function declarations.


2) To avoid redefining header files, conditional compilation is used: #ifndef xx: if xx is not defined; #define xx: then define xx; #endif: end.






#ifndef _TRACK_H #define _TRACK_H #include "gd32f4xx.h" #include "systick.h" #define XJ01_RCU RCU_GPIOA // Clock for GPIOA #define PORT_XJ01 GPIOA // Port for GPIOA #define XJ01_PIN GPIO_PIN_15 // Pin for GPIOA #define XJ02_RCU RCU_GPIOC // Clock for GPIOC #define PORT_XJ02 GPIOC // Port for GPIOC #define XJ02_PIN GPIO_PIN_10 // Pin for GPIOC #define XJ03_RCU RCU_GPIOC // Clock for GPIOC #define PORT_XJ03 GPIOC // Port for GPIOC #define XJ03_PIN GPIO_PIN_12 // Pin for GPIOC #define XJ04_RCU RCU_GPIOB // Clock for GPIOB #define PORT_XJ04 GPIOB // Port for GPIOB #define XJ04_PIN GPIO_PIN_13 // Pin for GPIOB #define XJ05_RCU RCU_GPIOB // Clock for GPIOB #define PORT_XJ05 GPIOB // Port for GPIOB #define XJ05_PIN GPIO_PIN_15 // Pin for GPIOB #define No_Black_Line_Found 0 // No black line detected #define Black_Line_Found 1 // Black line detected void track_gpio_config(void); // Tracking GPIO pin configuration void Black_Line_Detection(void); // Black line detection function #endif /* TRACK_H */
 





track.c


#include "track.h" FlagStatus XJ01 = RESET; FlagStatus XJ02 = RESET; FlagStatus XJ03 = RESET; FlagStatus XJ04 = RESET; FlagStatus XJ05 = RESET; /******* Function Name: track_gpio_config Function: Track GPIO pin configuration parameters: None Return Value: None **********/ void track_gpio_config(void) { /* Enable clock / rcu_periph_clock_enable(XJ01_RCU); / Configure as input mode pull-up mode / gpio_mode_set(PORT_XJ01,GPIO_MODE_INPUT,GPIO_PUPD_PULLUP,XJ01_PIN); / Enable clock / rcu_periph_clock_enable(XJ02_RCU); / Configure as input mode pull-up mode / `gpio_mode_set(PORT_XJ02,GPIO_MODE_INPUT,GPIO_PUPD_PULLUP,XJ02_PIN);` / Enable clock / `rcu_periph_clock_enable(XJ03_RCU);` / Configure as input pull-up mode / `gpio_mode_set(PORT_XJ03,GPIO_MODE_INPUT,GPIO_PUPD_PULLUP,XJ03_PIN);` / Enable clock / `rcu_periph_clock_enable(XJ04_RCU);` / Configure as input pull-up mode / `gpio_mode_set(PORT_XJ04,GPIO_MODE_INPUT,GPIO_PUPD_PULLUP,XJ04_PIN);` / Enable clock / `rcu_periph_clock_enable(XJ05_RCU);` / Configure as input pull-up mode */ gpio_mode_set(PORT_XJ05,GPIO_MODE_INPUT,GPIO_PUPD_PULLUP,XJ05_PIN); } /******* Function Name: Black_Line_Detection Function: Black line detection function Parameters: None Return Value: None **********/ void Black_Line_Detection(void) { XJ01 = gpio_input_bit_get(PORT_XJ01,XJ01_PIN); XJ02 = gpio_input_bit_get(PORT_XJ02,XJ02_PIN); XJ03 = gpio_input_bit_get(PORT_XJ03,XJ03_PIN); XJ04 = gpio_input_bit_get(PORT_XJ04,XJ04_PIN); XJ05 = gpio_input_bit_get(PORT_XJ05,XJ05_PIN); }









main.c


#include "main.h" #include "stdlib.h" #include "string.h" #include "bsp_pwm.h" #include "motor.h" #include "track.h" #include "bsp_led.h" #include "bsp_key.h" #include "bsp_beep.h" uint16_t No_Black_Line_TimeCount = 0 ; // No black line found time uint8_t LongTime_No_Black_Line_Flag = 0 ; // Flag indicating no black line found for a long time extern FlagStatus XJ01; extern FlagStatus XJ02; extern FlagStatus XJ03; extern FlagStatus XJ04; extern FlagStatus XJ05; /******* Function Name: main Functionality: Main function parameters: None Return value: None********/ int main(void) { `nvic_priority_group_set(NVIC_PRIGROUP_PRE2_SUB2);` // Priority grouping; `systick_config();` // Tick timer initialization; `pwm1_config(200, 100);` // Timer 1 PWM configuration: PWM output frequency 10kHz; `pwm2_config(200, ...`100); // Timer 2 PWM configuration PWM output frequency 10KHZ Speed ​​adjustment 0-100 motor_gpio_config(); // Motor drive pin initialization track_gpio_config(); // Tracking gpio pin configuration beep_gpio_config(); led_gpio_config(); key_gpio_config(); // Stop the engine car_stop(Flameout_Stop); // Turn off the headlights and buzzer beep_off(); led_l_off(); led_r_off(); LEDS=0; LEDM=0; while(1){ Black_Line_Detection();// Black line detection function if(XJ01==No_Black_Line_Found && XJ02==No_Black_Line_Found && XJ03==Black_Line_Found && XJ04==No_Black_Line_Found && XJ05==No_Black_Line_Found)//3 Black line detected in the middle 00100 { car_front(87); //Forward} if(XJ01==No_Black_Line_Found && XJ02==Black_Line_Found && XJ03==Black_Line_Found && XJ04==Black_Line_Found && XJ05==No_Black_Line_Found)//2 3 Black line detected in the middle 00100 { car_front(87); //Forward} if(XJ01==No_Black_Line_Found && XJ02==Black_Line_Found && XJ03==Black_Line_Found && XJ04==No_Black_Line_Found && XJ05==No_Black_Line_Found)//2 3 Black line detected (smaller to the right) 01100 { motor_LQ_front(40); motor_LH_front(40); motor_RQ_front(87); motor_RH_front(87); } if(XJ01==No_Black_Line_Found && XJ02==Black_Line_Found && XJ03==No_Black_Line_Found && XJ04==No_Black_Line_Found && XJ05==No_Black_Line_Found)//2 Black line detected (right bias) 01000 { motor_LQ_front(30); motor_LH_front(30); motor_RQ_front(87); motor_RH_front(87); } if(XJ01==No_Black_Line_Found && XJ02==No_Black_Line_Found && XJ03==Black_Line_Found && XJ04==Black_Line_Found && XJ05==No_Black_Line_Found)//4 3 Black line detected (left bias) 00110 { motor_LQ_front(87); motor_LH_front(87); motor_RQ_front(40); motor_RH_front(40); } if(XJ01==No_Black_Line_Found && XJ02==No_Black_Line_Found && XJ03==No_Black_Line_Found && XJ05==No_Black_Line_Found)//4 black line detected (larger to the left) { motor_LQ_front(87); motor_LH_front(87); motor_RQ_front(30); motor_RH_front(30); } if(XJ01==Black_Line_Found && && XJ04==No_Black_Line_Found && XJ05==No_Black_Line_Found)//1 2. Black line detected (left turn) { motor_LQ_back(55); motor_LH_back(55); motor_RQ_front(87); motor_RH_front(87); } if(XJ01==Black_Line_Found && XJ02==No_Black_Line_Found && XJ03==No_Black_Line_Found && XJ04==No_Black_Line_Found && XJ05==No_Black_Line_Found)//1. Black line detected (left turn) { motor_LQ_back(45); motor_LH_back(45); motor_RQ_front(87); motor_RH_front(87); } if(XJ01==Black_Line_Found && XJ02==Black_Line_Found && XJ03==Black_Line_Found && XJ04==No_Black_Line_Found && XJ05==No_Black_Line_Found)//1 2 3 Black line detected (left turn) { motor_LQ_back(35); motor_LH_back(35); motor_RQ_front(87); motor_RH_front(87); } if(XJ01==No_Black_Line_Found && XJ02==No_Black_Line_Found && XJ03==No_Black_Line_Found && XJ04==Black_Line_Found && XJ05==Black_Line_Found)//4 5 Black line detected (right turn) { motor_LQ_front(87); motor_LH_front(87); motor_RQ_back(55); motor_RH_back(55); } if(XJ01==No_Black_Line_Found && XJ02==No_Black_Line_Found &&XJ03==No_Black_Line_Found && XJ04==No_Black_Line_Found && XJ05==Black_Line_Found)//5 Black line detected (right turn) { motor_LQ_front(87); motor_LH_front(87); motor_RQ_back(45); motor_RH_back(45); } if(XJ01==No_Black_Line_Found && XJ02==No_Black_Line_Found && XJ03==Black_Line_Found && XJ04==Black_Line_Found && XJ05==Black_Line_Found)//3 4 5 Black line detected (right turn) { motor_LQ_front(87); motor_LH_front(87); motor_RQ_back(35); motor_RH_back(35); } if(XJ01==Black_Line_Found && XJ02==Black_Line_Found && XJ03==Black_Line_Found && XJ04==Black_Line_Found && if(XJ01==Black_Line_Found || XJ02==Black_Line_Found || XJ03==Black_Line_Found || && XJ02==No_Black_Line_Found && XJ03==No_Black_Line_Found && XJ04==No_Black_Line_Found && XJ05==No_Black_Line_Found)//No black line detected (stop) { if(LongTime_No_Black_Line_Flag == 1)//Long time car_stop(Brake_Stop);//Brake stop else car_front(87); //Move forward} } }









 









 
参考设计图片
×
 
 
Search Datasheet?

Supported by EEWorld Datasheet

Forum More
Update:2026-03-26 13:03:28

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
community

Robot
development
community

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号