Viva Flashcards

(37 cards)

1
Q

topic 1: Q2: Why use I2C for sensor communication?

A

A: I2C allows multiple sensors (e.g. MPU6050, OLED) to share two wires (SDA/SCL), saving GPIO pins and simplifying wiring.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

topic 1: Q1: What is the function of the ESP32 in the EEEBot?

A

A: The ESP32 is the central microcontroller. It handles:

Motor control via PWM

Sensor communication (I2C/GPIO)

Wireless communication via Wi-Fi (MQTT in software route)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Q3: What happens if I2C pull-up resistors are omitted?

A

A: The data lines may float, leading to unreliable or failed communication. Pull-ups ensure correct high logic levels.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

topic 2: Q1: What is the purpose of the MPU6050 in blind maze navigation?

A

A: The MPU6050 provides gyro and acceleration data. It allows the bot to detect and execute accurate turns (e.g. 90°) without vision.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

topic 2: Q2: Why are encoders not reliable on their own?

A

A: Encoders measure wheel rotations but can be affected by slippage or uneven surfaces, leading to cumulative drift over time.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

topic 2: Q3: What would happen if the ultrasonic sensor was used for all navigation?

A

A: It would detect obstacles, but cannot provide orientation or direction, making it ineffective for path tracking or turning.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

topic 3: Q1: How does the EEEBot use the optical sensor array to follow a line?

A

A: IR sensors detect the contrast between black (absorbs IR) and white (reflects IR). Logic or PID adjusts motor speeds to keep the bot aligned.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

topic 3: Q2: Why was a pull-down resistor used in the sensor circuit?

A

A: To ensure a defined low logic level when the sensor output is inactive. Prevents noise or floating voltages on inputs.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

topic 3: Q3: What happens if the resistor value is too high?

A

A: The input pin may not pull low fast enough, leading to unstable readings or delayed sensor response.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

topic 4: Q1: How did the ESP32 integrate with Node-RED for wireless control?

A

A: Node-RED UI sent commands via MQTT (e.g. “forward”, “left”). The ESP32 subscribed to topics and executed corresponding actions.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

topic 4: Q2: Why use MQTT instead of HTTP?

A

A: MQTT is lightweight and uses less bandwidth. It supports real-time, event-based communication—ideal for embedded systems.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

topic 4: Q3: What happens if the MQTT broker disconnects?

A

A: The ESP32 won’t receive commands. A failsafe like a timeout or last-will message can be used to stop the bot safely.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

topic 5: Q1: How were symbols used to control the bot in maze navigation?

A

A: The Pi camera captured images, and OpenCV recognized shapes (e.g. triangle = forward). The Pi then sent commands over MQTT.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Topic 5: Q2: What happens if lighting conditions change?

A

A: Detection can fail due to poor contrast. Adaptive thresholding or using HSV color filtering can make the system more robust.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Topic 5: Q3: How did you ensure the bot moved accurately after a command?

A

A: The bot used encoders to measure distance and the MPU6050 to ensure accurate rotation angles, maintaining straight and precise motion.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Topic 1:What is the purpose of decoupling capacitors on the mainboard?

A

They filter out voltage spikes and noise on the power supply lines. This protects sensitive components like the ESP32 and ensures stable operation.

17
Q

Topic 1:How do you safely power the ESP32 and other components?

A

A voltage regulator converts the 7.4V Li-ion battery down to 5V or 3.3V. Care is taken not to exceed the ESP32’s 3.3V logic limits.

18
Q

Topic 1:What are the risks of incorrect pin assignments on the ESP32?

A

Using wrong pins can damage components or result in communication failure. Some pins are input-only or have special functions (e.g. GPIO34–39 are input-only).

19
Q

Topic 1: How does the ESP32 generate PWM signals for motor control?

A

It uses dedicated hardware PWM channels (LEDC peripheral) to generate precise signals. These control motor speed via duty cycle modulation.

20
Q

Topic 2: How does the ultrasonic sensor measure distance?

A

It sends an ultrasonic pulse and measures the time it takes for the echo to return. Distance = (time × speed of sound) / 2.

21
Q

Topic 2: What is dead reckoning and how was it implemented?

A

It’s a method of estimating current position using previous position and motion data. We used encoders for distance and MPU6050 for rotation to track position blindly.

22
Q

Topic 2: Why might you filter MPU6050 data?

A

Gyroscopes drift over time and accelerometers are noisy. A complementary filter or Kalman filter fuses data for accurate angle estimation.

23
Q

Topic 2: What are encoder resolution and CPR, and why do they matter?

A

CPR (counts per revolution) determines movement precision. Higher CPR gives finer control of motion and more accurate distance tracking.

24
Q

Topic 3: Why did you use a sensor array instead of a single sensor?

A

A single sensor only detects line presence. An array allows directional control—whether the line is to the left, right, or center—enabling steering adjustments.

25
Topic 3: How does a PID controller improve line following?
PID (Proportional-Integral-Derivative) calculates an error value based on sensor input and adjusts motor speeds to reduce that error smoothly and accurately.
26
Topic 3: What are the limitations of IR sensors in line following?
Performance degrades on glossy or dark-colored surfaces. Lighting conditions or line width variations can cause inconsistent readings.
27
Topic 3: Why might analog IR sensors be used instead of digital?
Analog sensors provide a range of values, allowing for finer control with techniques like PID. Digital sensors only give ON/OFF.
28
Topic 4: How did you prevent conflicting MQTT commands?
Commands were serialized, and the ESP32 queued or ignored duplicate/rapid inputs. Delay and control logic ensured commands were executed cleanly.
29
Topic 4: How did you test and debug MQTT communication?
Used the Node-RED debug node and MQTT testing tools like MQTT Explorer to monitor topic traffic and confirm message delivery.
30
Topic 4: What are retained messages and were they used?
Retained messages are stored on the broker and sent to new subscribers. We did not use them, as stale movement commands could be dangerous.
31
Topic 4: How did the ESP32 parse MQTT messages?
The ESP32 used the Arduino MQTT library, parsed incoming strings or JSON payloads, and mapped them to movement functions.
32
Topic 5: How does the image preprocessing work in OpenCV?
Image is converted to grayscale, then thresholded or blurred to reduce noise. Contours are found to detect shape outlines for classification.
33
Topic 5: What methods did you use to classify symbols?
Used contour properties like number of edges (e.g., triangle = 3), Hu Moments for shape comparison, or template matching.
34
Topic 5: How was camera calibration handled?
Ensured the camera was fixed at a consistent height and angle. If more advanced: used OpenCV calibration with a chessboard to correct distortion.
35
Topic 5: What would you do if multiple symbols were detected?
Selected the largest or most central one, assuming it’s closest. If needed, added logic to ignore noisy or partial shapes based on area and aspect ratio.
36
encoder
Encoders can be used to control motor rotation by detecting the motor's rotation angle and speed, this method is called feedback control. This translates mechanical movement into readable data for us to see
37
photodiode
photodiodes convert light into current, otherwise called photocurrent. As the light level increases, so does the current that the photodiode generates, which can be directly and indirectly measured in a circuit.