Arduino 2WD smartcar motor and sensors shield
thingiverse
This is an ongoing project. I am designing a custom Arduino shield for a 2WD smartcar like this one. The purpose of the project is to create a shield that will make it easy to connect sensors and control two motors, including feedback from motor speed sensors like this. I plan to use: Two motors from eBay or Pololu Three HC-SR04 ultrasonic distance measuring sensors A photoresistor for light measurement, similar to this one Possible two Sharp infrared distance measuring sensors Two motor speed photoelectric sensors The shield will include an ATmega328 controller for motor control. I want to control the motors using speed feedback from motor speed sensors, so it would be good to have a dedicated controller for this task. The idea is that the main Arduino board will only need to transfer the desired speed for each motor via I2C. Then, the controller on the shield will control the motors using feedback from the speed sensors. The PCB was manufactured using the PCBWay service (costing $10). Gerber files are attached. Any comments are welcomed. Here's how I designed this: Motor Driver I selected the ALLEGRO MICROSYSTEMS A4973SB-T chip to drive the motors. This chip has FET driving transistors, so it should have a low voltage drop and minimize power waste, especially for low current motors. The chip allows constant motor current up to 1.5A and voltage from 5V to 50V. In my case, I need 120mA and 5-6V. The driver "ON" resistance is less than 1.5 ohms, so for a 1A current, the voltage drop can be up to 1.5V. Since I only need 120mA, the voltage drop will be less than 180mV. According to the specs, the DIP package can dissipate near 3W, which means it's possible to draw constantly up to 1A. This chip also has thermal protection and current limiting functions. Current Limiting I added an option to use the current limiting function of the driver. I used R2 and R9 (0.47 Ohm resistors) for current sensing. At least 0.5W resistors should be used to withstand motor stall and short circuit current. A TEXAS INSTRUMENTS LM385LP-1-2 voltage reference is used to create a 1.235V reference voltage. The current limit is 1.235/(2*0.47) = 1.3A, which is generally for short circuit protection since the selected motor should have stall current less than 1A. R3, C8, and R7, C7 are used with recommended values for current limiting. Current Sensing The R2 and R9 current sensing resistors are connected to A0 and A1 analog inputs to enable motor current measurement and detection of stall. It may be useful to shut down the motors if a stall is detected to prevent fast discharge of the battery. The 1.235V reference voltage is also connected to the AREF input of the controller to improve accuracy of current measurement. Connectors JP1 - FDTI connector for programming the ATmega328 controller E1, E2 motor connectors PWR - motors power (generally 5V to 50V), for my case it's 5V to 6V S1, S2, S3 connectors for HC-SR04 sensors JP2 - jumper allows powering the shield from FDTI connector (for initial debug) IR1, IR2 - connectors for IR distance sensors SS1, SS2 connectors for motor speed sensors LIGHT - connector for light sensor BAT - battery connector. This is used to monitor battery voltage. JP3 - jumper allows connecting voltage from PWR connector to Vin pin of Arduino Pins Used D2-D7 pins are used for HC-SR04 sensors A4, A5 I2C communication A3, A2 optional IR sensors A1 optional light sensor A0 optional battery voltage measurement PCB Components * ALLEGRO MICROSYSTEMS A4973SB-T (driver chip) - 2 pieces ($5) * CRYSTAL, 32.768KHZ, 12.5PF - 1 piece ($1) * ATmega328 with Arduino Optiboot (Uno) - 2 pieces ($11) * Ceramic Capacitor, 22 pF - 2 pieces * Ceramic Capacitor, 470 pF - 2 pieces * Ceramic Capacitor, 100 nF - 6 pieces * Electrolytic Capacitor 100 µF - 3 pieces ($1) * Resistor 10 kOhm 0.25W - 5 pieces * Resistor 4.7 kOhm 0.25W - 2 pieces * Resistor 0.47 Ohm 0.5W - 2 pieces * DIP Socket, 16 Contacts - 2 pieces * DIP Socket, 28 Contacts * TEXAS INSTRUMENTS LM385LP-1-2 Voltage Reference - 1 piece
With this file you will be able to print Arduino 2WD smartcar motor and sensors shield with your 3D printer. Click on the button and save the file on your computer to work, edit or customize your design. You can also find more 3D designs for printers on Arduino 2WD smartcar motor and sensors shield.