Prototype for boat controller

So, the prototype is working. Not very beautiful, and the soldering sucks, but it works and it spares me from putting a breadboard in the boat again. Below the circuit board is the Arduino Mega which is currently operating as the test platform, on top of it are the MRF24J40MA wireless module and the Adafruit Ultimate GPS receiver.

Now I only have to build something similar for the bluetooth bridge, make some adjustments to the software and I’m good to run another life test on a lake (without having to fear that the boat wanders out of bluetooth range).

Continue reading

Controlling the boats motors from Android

So, I finally managed to get the basics done and put them together. First were the ESC for the motors. I had ordered two Turnigy 30A ESC for brushed motors from HobbyKing and it took “only” six weeks for them to be delivered. I guess it was my fault, ordering right before the chinese new year, when nobody seems to work for the next two weeks. At least neither my order was processed nor my questions were answered by the support. Anyway, they arrived eventually and I connected them to the motors, the battery pack and the Arduino. Continue reading

Progress

After six weeks of waiting the electronic speed controllers I ordered from HobbyKing finally arrived.

I just hooked it up to an Arduino Mega and a motor and the battery pack of the boat  to do some preliminary testing, so there isn’t much to show yet. I’ll post more when I’ve done some real stuff with it.

Void

Not much happening here right now, I tried various combinations to get the motors running, but to no avail. I tried motors on M1 + M2, M3 + M4, just to make sure it’s not a bad soldering joint. I tried piggybacking both L293 ICs to allow for a higher current. I tried the motors on M1 + M3, to spread the current of the two motors evenly. The result is always the same, more or less. The motors turn for a couple of seconds, then they stop. The ICs are becoming very hot, adding a heat sink doesn’t really help.

From what I gathered by reading through the adafruit support forum my best guess is that the motors need too much current for the ICs to handle. I can’t confirm this right now because the motors are not marked in any way, so I have no idea about their specifications. I ordered a new multimeter, currently I’m waiting for it to arrive. I hope I can do some helpful measuring when it’s here.

Current setup

Just to be thorough I thought it would be good to document the current setup I’m working with.

  • one Arduino Duemilanove
  • one Motor shield from adafruit
  • two DC motors
  • one 12V power supply from an old switch
The motor shield is stacked on top of the Arduino. The motors are connected to M1 and M2 on the motor shield. The motor shield draws power from the 12V PSU, for testing purposes it is configured not to share power with the Arduino. The Arduino draws power from the USB cable which connects it to my laptop.

It works … sort of

Okay, piggybacking the IC seems to improve the performance.

I’ve been trying to run this code:

#include <AFMotor.h>
 
AF_DCMotor motorR(1, MOTOR12_1KHZ);
AF_DCMotor motorL(2, MOTOR12_1KHZ);
 
void setup() {
  motorR.setSpeed(200);
  motorR.run(RELEASE);
 
  motorL.setSpeed(200);
  motorL.run(RELEASE);
  }
 
void loop() {
  motorR.setSpeed(200);
  motorL.setSpeed(200);
  motorR.run(BACKWARD);
  motorL.run(BACKWARD);
}

The motors start turning enough to turn the screws as well. After about 5 seconds the screws stop, but I can still hear the motors trying to turn them. Currently I have no idea why they can’t.

The L293 ICs are becoming quite hot, so I grabbed the first heat dispenser I could find in my assortment, it may be oversized but it should suffice.

Heat dispenser for the L293 ICs, a little oversizedThat’s it for today, let’s see what I can do about it over the weekend.