|
ATTINY85-20SU |
x 1 | |
|
18650 Battery Holder |
x 1 | |
|
18650 |
x 1 | |
|
5v Step Up |
x 1 | |
|
L293D |
x 1 | |
|
Dip 2 Pin |
x 2 | |
|
Dip 3 Pin |
x 1 | |
|
Slide Switch |
x 1 | |
|
Dip 4 Pin |
x 1 |
|
arduino IDEArduino
|
|
|
Soldering Iron Kit |
Dual Motor Controller for Model Robotics
In the thrilling world of robotics and DIY engineering, innovation continues to soar to new heights. This groundbreaking invention, aptly named the Dual Motor Controller, has been developed as a versatile solution for hobbyists and tinkerers. It leverages the power of an ATTiny85 microcontroller to command two motors through an L293D motor driver, energized by an 18650 battery holder. Additionally, it features an I2C port for communications and a servo motor port.
Disclaimer:
Please be aware that the Dual Motor Controller is devised for hobby robotics and similar applications. Ensuring proper handling and abiding by all safety guidelines is imperative, as mishandling could lead to damage or malfunction.
Potential Applications:
- Robotics Enthusiasts: The core functionality of the Dual Motor Controller is to manage two motors in parallel. It's an excellent solution for building small robots, RC vehicles, and other motorized gadgets.
- I2C Enabled Devices: With an incorporated I2C port, the controller offers opportunities for communication with various sensors, screens, or other I2C-compatible devices.
- Servo Motor Controls: The added servo motor port expands the functionality to include precise position control, opening doors to more complex mechanical assemblies.
Building Guide - Dual Motor Controller:
Gather the Necessary Tools and Materials:
You will need:
- An ATTiny85 microcontroller
- L293D motor driver
- Two motors
- 18650 battery holder
- Soldering iron, solder, flux
- Tweezers or small pliers
- I2C connectors and servo motor port
Assembly:
- Prepare the PCB Board: Ensure it's free from dust or grease.
- Place the ATTiny85: Insert it into the correct location on the PCB, aligning the pins with the layout.
- Mount the L293D Motor Driver: Align it with the appropriate pins on the PCB.
- Connect Motor Pins: Connect pins 2 and 10, and 7 and 15 on the L293D as explained earlier.
- Connect the Motors: Attach your motors to the designated pins on the PCB.
- Install the Battery Holder: Secure the 18650 battery holder and make the necessary connections.
- I2C and Servo Motor Port: Solder these connectors in place, following the layout provided.
- Soldering Process: Similar to the Altitude Indicator guide, you'll solder all components, inspecting and cleaning as needed.
- Testing: Power up your board using the 18650 battery and test both motors, I2C communication, and the servo motor port.
Programming the Board:
The ATTiny85 will need to be programmed to control the two motors using the L293D, along with any additional features like communicating via I2C or controlling a servo motor. Carefully write and upload your code, ensuring it aligns with the hardware connections you've made.
Conclusion:
With its flexibility and multifunctional features, the Dual Motor Controller provides an intriguing platform for hobbyists and DIY enthusiasts. Whether used in robotics, remote control vehicles, or other inventive projects, it showcases how creativity combined with the right set of components can result in something truly unique and fun to build.
Happy building!
#include <Wire.h>
#include <Servo.h>
// L293D Motor control pins
#define MOTOR1_A 2
#define MOTOR1_B 3
#define MOTOR2_A 4
#define MOTOR2_B 5
// Servo control pin
#define SERVO_PIN 6
Servo myServo;
void setup() {
// Set L293D pins as OUTPUT
pinMode(MOTOR1_A, OUTPUT);
pinMode(MOTOR1_B, OUTPUT);
pinMode(MOTOR2_A, OUTPUT);
pinMode(MOTOR2_B, OUTPUT);
// Start I2C bus
Wire.begin();
// Setup servo
myServo.attach(SERVO_PIN);
}
void loop() {
// Example: Forward motion for both motors
digitalWrite(MOTOR1_A, HIGH);
digitalWrite(MOTOR1_B, LOW);
digitalWrite(MOTOR2_A, HIGH);
digitalWrite(MOTOR2_B, LOW);
delay(1000); // Move forward for 1 second
// Stop both motors
digitalWrite(MOTOR1_A, LOW);
digitalWrite(MOTOR1_B, LOW);
digitalWrite(MOTOR2_A, LOW);
digitalWrite(MOTOR2_B, LOW);
delay(1000); // Stop for 1 second
// Example: Read from I2C sensor
Wire.requestFrom(0x77, 1); // replace 0x77 with your sensor's address
while (Wire.available()) {
char c = Wire.read();
// Process the data as needed
}
// Example: Move the servo
for(int pos = 0; pos <= 180; pos += 1) {
myServo.write(pos);
delay(15);
}
for(int pos = 180; pos >= 0; pos -= 1) {
myServo.write(pos);
delay(15);
}
delay(5000); // Wait for 5 seconds before repeating the loop
}
Dual Motor Controller for Model Robotics
*PCBWay community is a sharing platform. We are not responsible for any design issues and parameter issues (board thickness, surface finish, etc.) you choose.
- Comments(0)
- Likes(0)
- 0 USER VOTES
- YOUR VOTE 0.00 0.00
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
More by Inaki Iturriaga
- GPS Mobile Beacon Building a GPS Emergency Beacon: A DIY TutorialWelcome to our latest DIY project: creating a GPS Eme...
- Wireless RFID Card Copier. Wireless RFID Card CopierIn today's digital world, security and accessibility are of paramount impor...
- Piezo Alert System. Within the fast-evolving sphere of security tools and home automation, creativity often paves the wa...
- Wifi Weather Station - Sensors board WiFi Weather Station - Sensor unitIn our digital era, many electronics projects integrate diverse se...
- RC Receiver Build Your Own RC ReceiverHarnessing advanced electronics and precise control systems, the RC Receiv...
- Universal RC Controller Build Your Own Universal RC RemoteHarnessing the power of custom PCBs and wireless communication, th...
- Continuous GPS Tracker This compact and efficient tracker provides real-time location updates, making it ideal for surveill...
- Air Quality Monitor Welcome to our DIY tutorial on assembling an Air Quality Monitoring Device. This project is perfect ...
- Automatic Watch Winder Automatic Watch WinderIn the realm of luxury timepieces and watch aficionados, an automatic watch is...
- Handheld GPS Within the swiftly advancing realm of portable technology and travel essentials, innovation often sh...
- Dual Motor Controller for Model Robotics In the thrilling world of robotics and DIY engineering, innovation continues to soar to new heights....
- Altitude Indicator with Beeper for Rocketry Altitude Indicator for Model RocketryIn our ever-advancing technological landscape, countless projec...
- Wifi Weather Station - Display unit WiFi Weather Station - Display UnitIn this technologically advanced age, countless electronics proje...
- Positon Breakout Board Position Sensors Breakout Board In today's era of advanced technology, many electronics projects req...
- Ambient Sensors Breakout Board In today's world, electronics projects often require the integration of multiple sensors to collect ...
- Infrared Launch Controller IntroductionHave you ever wanted to remotely launch a rocket, drone or other device using infrared t...
- Altimeter Datalogger with Display. Building TutorialAltimeter Datalogger with Display.Components needed:BMP280 sensorI2C to 16x2 displa...
- Remote Igniter + 3D printed Case. Remote IR Igniter.Build an Infrared remote ignitor for model rocket testing and launching!This guide...
-
-
-
kmMiniSchield MIDI I/O - IN/OUT/THROUGH MIDI extension for kmMidiMini
128 0 0 -
DIY Laser Power Meter with Arduino
190 0 2 -
-
-
Box & Bolt, 3D Printed Cardboard Crafting Tools
171 0 2 -