A quick question about helicopter rotor thrust for new idea

I have 6 hs645mg servos for sale at £90. Thats £15 per servo!
Auction has ended but items are still avaliable. ?.
viewtopic.php?f=23&t=8650
Making great progress, and loving the name…
8)

Thanks. :mrgreen:

Thanks for the link - I shall PM you. ^___^

Hi guys! ^___^

So some of the robot brackets I had made arrived yesterday afternoon and I assembled what I could - just missing some bits and pieces from the docking system for it to be able to work in ‘Flying’ Mode.

I would like to apologise if you find the following news disappointing but I’m planning on putting this project on hold for a bit so I can work more on my coding skills since they are pretty weak. :frowning:
I’ll be back to this project as soon as I’m satisfied that I’ve reached a decent level. ^____^
I’ll be doing little pieces here and there and I’ll post them here but nothing major for the time being. :wink:

You can find photos below - Enjoy! :mrgreen:

AKdaBAOUS

P.S. Um, just a quick question …
I was reading about how you can connect two Arduinos together via the serial port so they can talk to each other - so am I right in thinking that if one of those boards was connected to joysticks/buttons and the other was used for controlling servos, etc. then by replacing the serial connection with something wireless (i.e. a bluetooth module or XBEE), I would essentially have a wireless remote control for the board?

Thanks! :mrgreen:

Its all looking oh so nice. Very professional build. :wink:
Really excited to see your next developments.
Sorry to hear things will be quite for a while, but its good the progress will continue.

To answer your question in the quickest way… yes you can do that with two arduinos.

Hahaha thanks! :mrgreen:

When you say quickest way, I’m guessing there are some kind of complications along the way?

I think those complication is directed at ones experiance. Personally I dont have all the knowledge of the “hows”. I just know it can be done.
Eric and I was talking about a similar thing by where we were going to build a new controller using an arduino to transmit the signals another arduino acting as the receiver.

Well I’ll give it a try and I’ll post my progress here. ^____^
It’ll be great coding practice too! :mrgreen:

Hi guys! ^___^

As I mentioned before, I was going to work on my coding skills, etc. so I thought I’d try my hand at making a basic wireless remote control for my robots (well, mainly for Red Nova ) using an ATmega328 (with the Arduino UNO bootloader).

So far, I have a basic design for the controller case and I’ll be using a circuit board I made to test out all the code before I make a simpler one for the controller.

Um …
Yep well this is the basic design for the controller - I originally intended to use two mini joysticks I found lying around but the touch screen uses up 4 of the 6 analogue pins with the other 2 being used for I2C on this board so I’ll have to stick to one and a variety of push buttons. :unamused:
I still have to change the design to the new idea so I’ll upload an updated one soon.

When I say ‘graphical UI’, it’ll pretty much be just the screen changing images depending on which sector of the touch screen is pressed. :mrgreen:

Now onto the “test” board …

The board is composed of two sections; the ATmega328 (Master) IC and then the 12 Channel Servo Controller (Slave) IC. I thought it’d be better if I had all the I/O pins on the ATmega free for sensors, displays, etc. and then used the controller IC for the PWMs.

(1) - Sockets for sensors (or other small boards) with connected headers which allow pins on the board to be connected to various parts of the circuit via jumper cables.

(2) - 3.3V/5V lines - the jumper is currently set to 5V.

(3) - The 3.3V Regulator.

(4) - The I2C (SDA/SCL) lines.

I’ve just connected the touch screen up to the controller and it works pretty well (although I’ve read that they aren’t all that accurate but I’m not going to be doing anything super precise so it’s okay ^___^). The touch screen seems to have some ‘idle values’ so it’ll display random co-ordinates even though nothing is coming into contact with it; I need to find a way to get rid of that … Any suggestions?

You might have some questions about the power wiring for the board - long story short, I wanted to power the board using the output from one of my ESCs so I designed the board so that the GND for the ATmega IC connects to the negative for the battery (via the terminal block in the bottom right) so I have to connect both leads of my battery pack to power the board - the small one going to the ESC which then powers the board via the black and white cables (white being +5V) and the bigger one going into the terminal block - effort. :laughing:
Oh, and sorry about the mess on the desk - I haven’t had a chance to clean it up.
I would have uploaded a video of the touch screen but it’s just a bunch of numbers on the Serial Monitor so it kinda seems pointless.

Um … oh yes, here are the parts I’m currently using (I still need to order the display):

2.2” LCD Display (with microSD breakout) - hobbytronics.co.uk/lcd/tft-lcd-2-2
Nintendo DS Touchscreen - hobbytronics.co.uk/lcd/nintendo-touch-screen
Touchscreen Breakout Board - hobbytronics.co.uk/lcd/nintendo-connector-breakout

You can find the code for it below:

[code]// Last Modified: April 5th 2013
// Description: Basic reading and displaying of values from a Touch Screen.
// Pin Mappings (Arduino - Breakout Board):
// A0 - Y1
// A1 - X2
// A2 - Y2
// A3 - X1

void setup()
{
}

int x_coordinate, y_coordinate = 0;

// Returns the value for the X-Axis.
int read_X()
{
int x_value = 0;

pinMode (A0, INPUT); // (Pin 23 on the ATmega328).
pinMode (A1, OUTPUT); // (Pin 24 on the ATmega328).
pinMode (A2, INPUT); // (Pin 25 on the ATmega328).
pinMode (A3, OUTPUT); // (Pin 26 on the ATmega328).

digitalWrite (A1, LOW);
digitalWrite (A3, HIGH);

delay (5);

x_value = analogRead (0);
return x_value;
}

// Returns the value for the Y-Axis.
int read_Y()
{
int y_value = 0;

pinMode (A0, OUTPUT); // (Pin 23 on the ATmega328).
pinMode (A1, INPUT); // (Pin 24 on the ATmega328).
pinMode (A2, OUTPUT); // (Pin 25 on the ATmega328).
pinMode (A3, INPUT); // (Pin 26 on the ATmega328).

digitalWrite (A0, LOW);
digitalWrite (A2, HIGH);

delay (5);

y_value = analogRead (1);
return y_value;
}

void loop()
{
Serial.begin(9600);

Serial.println ("x = ");
x_coordinate = read_X();
Serial.println (x_coordinate, DEC);

Serial.println ("y = ");
y_coordinate = read_Y();
Serial.println (y_coordinate, DEC);

delay (250);
}[/code]

That’s about it really … I’ll work on some kind of calibration for the touch screen and see if I can set it up to recognise some preset drawings (i.e. basic shapes, numbers, etc.). ^___^

AKdaBAOUS

Just a small update:

I managed to get rid of the idle values - turned out that they were above 860 which was the area very close to the edge of the screen so I just set it so it would read values equal to or below 850 and now it’s cool. ^___^

AKdaBAOUS

Hi guys! ^____^

Sorry it’s been quite a while since I made a post - I’ve got a pretty final design idea for the remote control but unfortunately, my mini display hasn’t arrived yet (hopefully sometime this week) and due to this, I can’t produce any accurate final designs. :frowning:
I have, however, decided to move the remote’s design in a different direction - I’ve removed the touch screen from the design for this version of the remote to allow for the addition of an extra joystick controller as well as a left and right trigger.
My second design idea involves creating a basic watch-like remote control which the user could easily strap to his wrist (approximate dimensions at the moment are 70mm x 50mm). This design features the touch screen along with four small buttons along the side and a 4 (or 5 depending of whether or not your joystick has a select button) pin socket somewhere on the rim which would allow for the connection of a single joystick and the LCD display as a standard. I’m afraid I don’t have much time now to draw up nice versions of the design (the end of the Semester coming up and work is being pilled on along with revision for exams, etc.) but I’ll try to post some neat sketches of it when I get a chance. :wink:

I’ve been experimenting with the dual joysticks (I found a pair of these in one of my component trays) and I’ve got them working and displaying values on the serial monitor (the code can be found below). The push buttons are also working and I’ve got an idea on how I can create the trigger buttons so yes, just the display left and then I should be able to stick it all together. :mrgreen:

I also had some new 45 degree leg brackets 3D printed - these are much stronger and provide a lot more stability to the design. I’m also going to be re-designing the main body to try to make it as small as possible and with the help of these new brackets, that should quite easily be possible. :smiley:

That’s it for now I’m afraid, I’ll post some more updates once the display arrives and I’ve got it up and running. ^___^

[code]// Title: Joystick Reading.
// Description: Reading values from the LEFT & RIGHT joysticks
// and displaying respective scaled values on the Serial Monitor.
// Date: 29th April 2013.

// Assigning the relevant pins of the board to the respective
// pins on the joysticks.
const int LX = A2;
const int LY = A3;
const int RX = A4;
const int RY = A5;

// Setting our variables that will be updated at each instance
// after the joystick position changes.
int previous_LX = 0;
int previous_LY = 0;
int previous_RX = 0;
int previous_RY = 0;

void setup()
{
Serial.begin (9600); // Start the serial communication.
}

void loop()
{
// Variables that will be used for storing the “mapped” data
// for the RIGHT joystick.
int RX_value;
int RY_value;

// Mapping the original values provided by the joystick into
// values between 0 & 20 for ease of use.
RX_value = map (analogRead (RX), 0, 1023, 1, 20);
RY_value = map (analogRead (RY), 0, 1023, 1, 20);

// Comparing new and old values to see whether or not to print
// them.
if ( (previous_RX != RX_value) || (previous_RY != RY_value) )
{
Serial.print (“RIGHT - X Value = “);
Serial.print (RX_value);
Serial.print (”: Y Value = “);
Serial.print (RY_value);
Serial.println (””);

// Updating the previous values provided by the joystick.
previous_RX = RX_value;
previous_RY = RY_value;  

}

// Variables that will be used for storing the “mapped” data
// for the LEFT joystick.
int LX_value;
int LY_value;

// Mapping the original values provided by the joystick into
// values between 0 & 20 for ease of use.
LX_value = map (analogRead (LX), 0, 1023, 1, 20);
LY_value = map (analogRead (LY), 0, 1023, 1, 20);

// Comparing new and old values to see whether or not to print
// them.
if ( (previous_LX != LX_value) || (previous_LY != LY_value) )
{
Serial.print (“LEFT - X Value = “);
Serial.print (LX_value);
Serial.print (”: Y Value = “);
Serial.print (LY_value);
Serial.println (””);

// Updating the previous values provided by the joystick.
previous_LX = LX_value;
previous_LY = LY_value;

}
delay (10);
}[/code]

AKdaBAOUS

:smiley:
great to see you have taken on every part of this project. its good that you are taking your time also. The updates are great and always looking forward to more.

never see things with as a bad thing …its all progress.

Thanks. :mrgreen:
Yeah, it’s just a shame that I’m having to slow things down though - I was getting to the good bits. :laughing:
About 2 hours ago, I was inspired by an old anime called Medabots (that I used to watch as a child) to start a second small project while Red Nova snoozes :wink: - a mini biped/humanoid robot (hopefully no larger than 15cm) equipped with sensors, mini weapons and is compatible with the current remote control I’m working on. :mrgreen:

I’m trying out the Fusion Robot (from before) since that’s the smallest biped I currently have assembled. ^___^

AKdaBAOUS

Hi everyone!

I just wanted to announce that I’ll be starting another project (in addition to the currently ongoing Red Nova) - a mini-humanoid robot called “Absolute Zero” (he’s so cool, he’s cold) 8) . Cheesy, yes I know, but I just thought it sounded hilarious. :laughing:
I’ve done some quick sketches for leg/arm configurations and I’ve got a basic idea to build upon so I’ll try to knock this project out before I focus my full attention on Red Nova - unfortunately, this’ll be the last update I post until after June 4th (my last exam) which is when I’ll be Robotizing full time. :wink:

Before I go, here are some photos of the new bracket design - I went for a small and simple design to reduce size and weight. The internal holes have been countersunk allowing the servo to fit in ‘snugly’ within the bracket and is it just me, or does the bracket look a bit like a Chariot? ^___^

Anyway, enjoy the photos and see you guys in about 3 weeks! :mrgreen:

AKdaBAOUS


Shapeways ?

Yep. :mrgreen:
I’m trying out a few different companies at the moment and Shapeways so far has my vote. ^___^

They are more easy for people like us.
I had some quote and order at 3dworknet (same process and same printer) but Shapeways is still better in price

They look pretty cool - I’m going to try out 3dprint-uk.co.uk/ as well since they’re closer to home and they gave me a cheaper quote than Shapeways for some brackets. :mrgreen:

Hay they have updated their website. looks much better.

I did go to them once for a quote and they were more than Shapeways and in actual fact they pointed me back to Shapeways as they new they would be cheaper. i would like to move to a UK company but i get everything i need “and then some” from Shapeways.

If only i could get my hands on one of those machines… !

Yeah, I know what you mean - I ended up sticking with Shapeways because like you said, they have more to offer and they’ve already won my vote for their range of colours. :laughing:

Every hobbyist’s dream … :wink:
I have found a few small nice ones but they all start off at about £1000 for the basic model :cry: although I might be able to save up for one from my summer job so fingers crossed. :mrgreen:

i dont mean PLA. i dont want an extruder printer. i want a powder builder. Laser sintering like shapeways. 8)