Iron man motorised faceplate electronics tutorial!!!

Huge facepalm moment, 2 servos, twice the draw. I have a voltage regulator in the sidelines, I'll need to rebuild my battery box.
It doesn't help that I'm also playing with 2 hinge setups, one with a single servo and another with a double.
I'm having a huge issue with tossing too many options and projects in the air at once and not getting anything finished!
I blame this website for all the great ideas. Also, I have a remote control that uses AAAA batteries (also 1.5v, but only 600 mAh compared to AA's 1200 mAh)
and was able to get a carton from radio shack when it was going out of business for a steal. I'd love to be able to use them both for the size and the volume that I have,
but I can't quite wrap my head around the how the mAh factors into this system. If someone could PM me instead if they feel this would clutter up this thread, that would be solid.
In a semi related question, what in this system would be likely to short/burn out over time outside of the servos? I'm trying to think ahead in terms of what i'm going to solder together and what I'm going to use detachable connectors.
 
twice the current draw if I'm not mistaken.. not voltage.


ubcs86 I blame this website too for so many great projects/ideas.. (hell I might as well blame it too for my laziness/ADD and never finishing a project either!) lol

Your +6v (4xAA batteries) should work just FINE to power the servos.. (doesnt need a regulator either, if they can handle 5-12v or whatever)

you could probably power the Arduino from the +6v pack too... (might be too close for the voltage dropout on the regulator though)... (do not by pass the regulator with the +6v you'll kill the Arduino)


you dont need to worry about the mAh really.. (its usually not correct anyways).. but the short of it is..

if all your components take up 1000mA in current.. and the batteries have say 2500mA(h).. you'll get roughly 2.5 hours of 'run-time' from your project.


re: your question, nothing should IMHO.. If things are done correctly..

* not more than +5v to the Arduino
* Give your Servo's whatever they need/are rated for.. (make sure not more, .. never saw servos that take +5v-+12v myself though)
* make sure your eye/leds to not get more voltage than they can handle

How you do the above it up to yo.. (and IMHO really depends on the battery pack you end up using)

myself, I suggest a +7.4v Li-Ion pack.. (good middle ground)

enough to power +5v regulators..
enough current for servos/leds..etc
 
Last edited by a moderator:
So, I'm working on my circuit. Keeping it simple and planning to activate my eye LEDs in a separate circuit and reed switch.

Ran into a snag and was looking for input.

I've followed the thread and the circuit works just fine using JR NES 507 servos. When I swapped those out for Turnigy 380max micro servos, the circuit doesn't work. Servos won't move. Yet when I test the Turnigy servos on the basic sweep circuit that comes with the Arduino, they work just fine. Any ideas?
 
I believe the version that TheRealTonyStark created uses only one servo. (his mounted under the center section of the helmet)

really its all about the swing/hinge mechanism you make.

(and of course a servo with enough torque to lift things)
 
So would this code work with a mini, one servo and two of the Adafruit Backlight modules https://www.adafruit.com/products/1622

#include <Servo.h>
//servo 1
Servo myservo;
Servo myservo1;
int val; // variable for reading the pin status
int val2; // variable for reading the delayed/debounced status
int buttonState;
int pos = 0;
int pos1 = 180;
int servostatus = 0;
int switchPin =2; // Switch connected to digital pin 2
int ledPin = 5;
int ledPin2 = 18;
void setup() // run once, when the sketch starts
{
//servo 1

myservo.attach(9);
myservo1.attach(10);
pinMode(switchPin, INPUT);
pinMode(ledPin, OUTPUT);
buttonState = digitalRead(switchPin);
myservo.write(0);
myservo1.write(175);
pinMode(ledPin2, OUTPUT);
}

void loop() // run over and over again

//servo 1
{
val = digitalRead(switchPin); // read input value and store it in val
delay(10); // 10 milliseconds is a good amount of time
val2 = digitalRead(switchPin); // read the input again to check for bounces
if (val == val2) { // make sure we got 2 consistant readings!
if (val != buttonState) { // the button state has changed!
if (val == LOW) { // check if the button is pressed
if (servostatus == 0) { // is the light off?
servostatus = 1; // turn light on!

myservo.write(0);
myservo1.write(180);
delay(1000);
digitalWrite(ledPin, HIGH);
delay(50);
digitalWrite(ledPin, LOW);
delay(00);
digitalWrite(ledPin, HIGH);
delay(50);
digitalWrite(ledPin, LOW);
delay(00);


// fading
for(int fadeValue = 0 ; fadeValue <= 255; fadeValue +=5) {
// sets the value (range from 0 to 255):
analogWrite(ledPin, fadeValue);
delay(30);


}

} else {
servostatus = 0; // turn light off!


digitalWrite(ledPin, LOW);
delay(15);
digitalWrite(ledPin2, LOW);
myservo.write(180);
myservo1.write(0);






}
}
}
buttonState = val; // save the new state in our variable
}
}

 
it will work with a mini....

any Arduino compatible circuit should work..

if you use a MEGA or other version... you'll probably have to update the pins.



* one servo will work (you'll have to remove any references to the other servo instance in the code then)

* these ones from Adafruit might work better: https://www.adafruit.com/products/1626

same thing different size.. I guess whatever fits your particular bucket best.

*you'll need to use the correct resistor on those though.. an Arduino pin puts out +5v... so you'll need to regulate it down to +3v and 20mA


not sure whos code your using.. so follow that particular diagram.
 
Just another thank you to everyone here helping out, in the past 6 months my build has come along heaps and bounds thanks to everyone here!!
Thanks to everyone here my helmet is now completely independent as it's now remote controlled! i was soooo happy when i got it working but i never would have got there without this forum or this thread.... so thanks guys! Video below is anyone is interested in the remote control helmet :)

https://www.youtube.com/watch?v=Ptf6NBRmK1s
 
Floppy, really nice work! Opens and closes smoothly!
I've been toiling away with a mk43 helmet hinge, have something figured out I just need to tie in the servo and get it wired up. Crunch time!
 
2015-10-30 16.07.45.jpg
Ok guys and gals, I am stuck.

I am using the following items.
HiTec HS 125MG servo
Ardruio Pro Mini
Adafruit remote control and board.
Adafruit LED backlight https://www.adafruit.com/products/1622.

I am lost on how to wire this up. Where do I start? I have programmed my mini with the following code for the IR remote and basic wiring setup.
https://learn.adafruit.com/using-an-infrared-library/controlling-a-servo-with-ir-1

I know the 9V battery goes to pins RAW and GND.
What pin would be my IR connection?
What about doing a fade on and turn off with the eyes when the helmet closes and opens?
 
Last edited:
IMHO.... here are my suggestions.


1.) Ditch the +9v battery.. its been stated over & over & over & over NOT to use these.. they suck/are junk. (if you want to use them against all advice, you will have problems that you are bringing on yourself)

* you wont get enough current to move the servos under load probably..
* it'll probably die after short usage..


2.) Get rid of the 'IR' remote stuff.. UNTIL you have it working with a simple switch. (it should be a simple drop-in replacement once everything else is working properly)

However, that being said.. looking at the example code..

it looks like the IR sensor goes on pin #11 (IRrecv My_Receiver(11);//Receive on pin 11)

it also looks like (from the example) that you can use any/all of the buttons... but you should only need the one... right? (which will help cut down on the code in the end)


* disclaimer, I have NOT used this IR sensor/remote before.. so I cant give 100% concrete advice on it, and without getting under the hood myself and playing with the code.. I cant say for sure if there will be any conflicts.. or the best way to integrate both classes. (but it doesnt look 'too' hard to do with some time to play with it)

I would suggest looking at my code and my diagram...

the best part (for you) is that you can IGNORE all the LED parts (transistor, resistors, leds..etc)

and plug in your backlit LEDS directly to the Arduino pins (with correct value resistor of course)
http://led.linear1.org/1led.wiz?VS=5;VF=3;ID=20

Arduino pins are +5v pins
Your backlit LED has a forward voltage (running voltage) of +3v...
the calculator says to use a 100ohm 1/8watt resistor (for each eye)

* in this case each eye should also be on its own pin

Really there is a TON of code and diagrams in this thread (and many others)


* I would suggest to follow either mine or fellow member: "memebr's" advice.



If you really wanted to pick a part the codes posted here.. you could probably add it into the same sketch/code posted with their IR example

good luck!
 
Hey x197, Got it wired up. Programmed with your first code and seems to work except backwards. When switch is pushed servo opens and eyes turn on, when pushed again, closes and eyes turn off.
 
This thread is more than 4 years old.

Your message may be considered spam for the following reasons:

  1. This thread hasn't been active in some time. A new post in this thread might not contribute constructively to this discussion after so long.
If you wish to reply despite these issues, check the box below before replying.
Be aware that malicious compliance may result in more severe penalties.
Back
Top