to make an LED blink, would I use a 555 chip or a flip flop and why?
How are you thinking of using a flip-flop as an oscillator? Is this for schoolwork?
well, flip flop are also called multivibrator.....
I am working on a personal project, a simple tracking device with two light sensors. the tracking device is fixed in place but can rotate with a servo. The goal is to have the servo and the light sensors mounted on it to point, in a straight line of sight, towards a blinking LED that can slowly move in the room...
I thought about using a 555 to make the LED blink. As far as the light sensors, I thought about a difference amplifier: once the light sensors point, face directly the LED the difference amplifier output will be zero ( I think).The difference amplifier inputs will be the voltages from the two sensors....
When the 2 sensors are not facing the LED, the servo will rotate them until they are....
Do I need a feedback system between the difference amplifier and the servo? How
How does the servo know if it needs to move left or right to make the output of the difference amplifier zero?
Do you have any hint, suggestion?
A 555 will use fewer components.
This one uses just two components plus the LED and its series resistor. It uses a CMOS 555 which is better if you don't need high power output. Do you understand why you would use a flashing LED?
If you want this to be your project, then you want to work out these things yourself, though.
Generally, you have two light sensors close together, with an opaque screen between them.
If the screen is pointing slightly away from the LED, the screen will cut out the light going to one of the sensors so the other sensor will give output, but that one won't.
If neither sensor gives output, then you rotate the sensors until they both give output.
your explanation is very useful. As far as the LED goes, I don't necessarily need it to blink for the tracking application.
As far as the difference amplifier/servo communication: what do I need in between to create the feedback loop?
The problem with servo is that the control occurs via a pulsed signal and the difference amplifier does not output such a signal.
I could use a microprocessor like Arduino but I still need to figure out how....
You need a pulsed light source if you are going to use it in a room that has other lighting.
If you have the LED flashing at 38 KHz, you can use an infra red LED and have infra red receivers in the sensors.
These give an output that is LOW when it receives a signal.
Like this one
(I don't think people click on these links, but you should read that one.)
With a micro like an Arduino, then the project should be easy.
If no inputs are low turn left (or right, whatever) to rotate until you find a signal.
If one is low turn towards the other one.
If both inputs are low, stop turning.
Beware of reflections.
I guess I also need a PWM chip, a pulse width modulator chip, since the servo motor is controlled by a pulsed signal.
In essence, two sensors, physically connected to servo and electrically to Arduino, a PWM chip that allows communication between the Arduino and the servo after Arduino receives the signals from the sensors....
Does that sound like a good plan? do I really need the PWM chip?
A servo has to get a very specific type of pulse to work.
Servos require a pulse of 0.75 to 2.25ms every 20ms, and this pulse must be constantly repeated every 20ms. The range of pulses from 0.75 to 2.25ms control the position of the servo.
So, I don't think you can do this with a PWM chip.
The Arduino apparently does have SERVO commands:
// Controlling a servo position using a potentiometer (variable resistor)
// by Michal Rinott <http://people.interaction-ivrea.it/m.rinott>
Servo myservo; // create servo object to control a servo
int potpin = 0; // analog pin used to connect the potentiometer
int val; // variable to read the value from the analog pin
myservo.attach(9); // attaches the servo on pin 9 to the servo object
val = analogRead(potpin); // reads the value of the potentiometer (value between 0 and 1023)
val = map(val, 0, 1023, 0, 179); // scale it to use it with the servo (value between 0 and 180)
myservo.write(val); // sets the servo position according to the scaled value
delay(15); // waits for the servo to get there
I have no experience with Arduino, though, so you need to check how to do this.
I have a question about powering electronic devices...maybe you know:
all devices need power, energy, to function.
Power is P= IV
Some devices need a large current and small voltage. Some need the opposite..why?
Also, I am familiar with the max power transfer theorem. But not all devices seem to satisfy that.
If we provided the maximum voltage to a device instead of the max power, the device itself would use that max voltage to create a large current and get the max power it can....
That way it would operate using large power without needing to meet the max power theorem requirements...
Is that true?
There are usually properties of a power source that limit what it can do.
These are the maximum voltage (off load) of the source, and the internal resistance.
So, if you have to use a certain power supply, then the maximum power you can get out of it is into a resistor equal to the internal resistance of the supply.
A bigger resistor will draw less current and a smaller one would drop the voltage more. In both cases, this reduces the power out, which is a product of current and voltage.
If you had a bigger supply with more voltage and / or less internal resistance, then you could get more power out, but you haven't and you have to use the smaller power supply.
Some devices need a large voltage to operate but they don't need much current.
Other things are designed to run off a particular voltage because that voltage is available. An example is 12 volts which is commonly used because this is the voltage that car batteries provide. It is also a voltage where most transistors operate efficiently.
Out of curiosity, did your professors teach P=I*V and if so where did you go to school? I wonder, if their intent was to make to make P=E*I easier to understand, why didn't they use W=V*A?
Separate names with a comma.