Hardware Documentation - lukasholtkamp/b.ob GitHub Wiki
This article lists the diagrams and tables needed for wiring up bob. Status: 24.07.2024
For the detailed circuit diagram, click the link below:
B.ob_CircuitDiagram.pdf
B.ob_fritzing.fzz
Signal | GPIO-Board | GPIO-BCM | Wire Color |
---|---|---|---|
3.3V | 01 | 3.3V | Green |
5V | 02 | 5V | Red |
GND | 39 | GND | Black |
Left-ALM | 15 | GPIO 22 | Blue |
Right-ALM | 22 | GPIO 25 | Blue |
Left-Encoder | 16 | GPIO 23 | Brown |
Right-Encoder | 18 | GPIO 24 | Brown |
Left-F/R | 31 | GPIO 06 | White |
Right-F/R | 35 | GPIO 19 | White |
Left-PWM | 33 | GPIO 13 | Orange |
Right-PWM | 32 | GPIO 12 | Orange |
SDA | 3 | GPIO 2 | Purple |
SCL | 4 | GPIO 3 | Yellow |
Tx | 8 | GPIO 14 | Pink |
Rx | 10 | GPIO 15 | White |
Raspberry Pi 4 Pinout |
In this circuit, an n-channel MOSFET is used to control a direction signal sent to a motor driver. The MOSFET's gate is driven by a 3.3V GPIO pin, and the source is connected to a controller signal, which can be either 0V or 3.3V. A 10kΩ resistor is connected between the gate and the source, and another 10kΩ resistor is connected between the drain and a 5V power supply. The drain also connects to the motor driver's direction input.
- MOSFET: n-channel type
- Gate Resistor: 10kΩ (between gate and source)
- Drain Resistor: 10kΩ (between drain and 5V supply)
- GPIO Pin: Provides 3.3V to the gate
- Controller Signal: Provides 0V or 3.3V to the source
- Power Supply: 5V connected to the drain through a resistor
- Motor Driver: Receives the direction signal from the drain
- Source Voltage (V_S): 3.3V
- Gate Voltage (V_G): 3.3V (from GPIO pin)
-
Gate-Source Voltage (V_GS):
- The voltage difference between the gate and source is 0V (V_GS = V_G - V_S = 3.3V - 3.3V = 0V).
- Since V_GS = 0V, the MOSFET is in the cutoff region and is turned off.
- Drain Voltage: 5V (from the 5V supply through the 10kΩ resistor)
- Motor Driver Input: Receives a high signal (5V)
- Source Voltage (V_S): 0V
- Gate Voltage (V_G): 3.3V (from GPIO pin)
-
Gate-Source Voltage (V_GS):
- The voltage difference between the gate and source is 3.3V (V_GS = V_G - V_S = 3.3V - 0V = 3.3V).
- Since V_GS = 3.3V, the MOSFET is in the saturation or linear region and is turned on.
- Drain Voltage: Close to 0V (pulled down by the MOSFET)
- Motor Driver Input: Receives a low signal (close to 0V)
The 10kΩ resistor between the gate and source ensures stable operation by influencing the gate-source voltage relationship. It provides a discharge path for the gate capacitance when the source voltage drops, helping stabilize the gate voltage when the source voltage changes.
- Gate-Source Resistor: Ensures stable switching by influencing V_GS.
-
When Controller Signal is High (3.3V):
- MOSFET is off, and the motor driver sees 5V (high signal).
-
When Controller Signal is Low (0V):
- MOSFET is on, and the motor driver sees 0V (low signal).
In this configuration, the MOSFET acts as a switch controlled by the controller signal, ensuring reliable control of the direction signal sent to the motor driver.
Here is a simulation circuit: Simulation Link.
You can also try toggling the LEFT - RIGHT_F/R between 3.3V and 0V to observe the output voltage at M_LEFT - M_RIGHT_F/R.
- The emergency stop switch must be quickly accessible.
- The emergency stop switch must switch off all actuators on the hardware side.
- The emergency stop circuit must be implemented as normally closed.
- The battery must not be short-circuited under any circumstances.
- The battery voltage per cell must be greater than 3.3V and smaller than 4.2V.
- The Battery should not be stored on 4.2V (100%) over a longer period, for better battery health.
The RPLIDAR A1 by SLAMTEC is a compact 360° LiDAR with a range of 0.15 - 12 meters, ideal for SLAM, HRI, and navigation applications. It includes a USB UART adapter for easy integration and supports various ROS packages and Arduino libraries.
Technical specifications:
|
Source: https://www.waveshare.com/rplidar-a1.htm |
The MPU6050 module integrates a MEMS 3-axis accelerometer and 3-axis gyroscope, allowing measurement of acceleration, velocity, orientation, displacement, and other motion-related parameters of a system or object.
Features:
|
Source: https://components101.com/sensors/mpu6050-module |
Pin Number | Pin Name | Description |
---|---|---|
1 | Vcc | Provides power for the module, can be +3.3V to +5V. Typically +5V is used |
2 | Ground | Connected to Ground of system |
3 | Serial Clock (SCL) | Used for providing clock pulse for I2C Communication |
4 | Serial Data (SDA) | Used for transferring Data through I2C communication |
5 | Auxiliary Serial Data (XDA) | Can be used to interface other I2C modules with MPU6050. It is optional |
6 | Auxiliary Serial Clock (XCL) | Can be used to interface other I2C modules with MPU6050. It is optional |
7 | AD0 | If more than one MPU6050 is used with a single MCU, then this pin can be used to vary the address |
8 | Interrupt (INT) | Interrupt pin to indicate that data is available for MCU to read |
The HMMD-mmWave-Sensor is a human micro-motion sensor that uses FMCW technology to detect and identify moving, standing, and motionless human bodies. It supports configurable sensitivity for each range to improve anti-interference performance, making it ideal for AIoT scenarios such as Smart Home, Intelligent Security, Smart Business, and Intelligent Lights.
Hardware:
|
Source: https://eckstein-shop.de/WaveShare-Human-Micro-Motion-Detection-mmWave-Sensor |
Pin Number | Pin Name | Description |
---|---|---|
1 | 3.3V | Power supply positive, 3.0~3.6V,Typ.3.3V. |
2 | Ground | Connected to Ground of system |
3 | Tx | UART_Tx |
4 | Rx | UART_Rx |
5 | OT2 | IO, Used for reporting detection status: High output level for presence, low output level for absence. |