Answer .: Don's question:Can the Arduino be used to operate a dc motor? If so, what type of driver circuit is required? to use a PPM for example, we use a driver to drive the current to the motor per time.to drive the PPM(Pulse Position Modulation) we use ESC (Electronic Speed Controller).

Answer .: Don's question:Besides using a Tilt Switch, name another sensing device that can control the servo motor in the Block Diagram shown in slide 7.thermistor for the temperature, and speed motor using ESC for driving current.

Yes, additional libraries can be added to an Arduino sketch using the "include" statement.If you go the arduino.cc website an to the "playground" you should be able to find all sorts of libraries via arduino applications to use for your sketches. Hope this helps.

@luizcosta - Don is refering to hobbiest servos such as you find in the RC world. They come in two varieties - one version rotates like a drive motor with the speed and direction controlled by the PWM. The other version rotates to a specific position based on the PWM signal it gets. Hope this clears that up.

Servo motors can be operated in a continuous mode by removing the embedded potentiometer connection from the motor. Angular/Step servo motors are based on a command pulse moving the shaft in degrees for a mechanical hard stop. Traditionally, the max rotation for a typical servo motor is 180 degrees. Stepper motors can run continuously or in steps (angles) by providing a binary value.The binary value tells the two windings inside of stepper motor would position its shaft should be at. Brushed motor is a typical motor and brushless has no internal contacts to provide electrical current for the commutator and slip rings to assist in rotating the motor. Hope this explanation helps.

As a quick check into interfacing the Arduino with BLE tech, check out the playground within the arduino.cc. The playground has a wealth of libraries,sketches, and circuit schematics to assist in the development of your Arduino projects.

@Rob Spiegel, is there any way to sort the Live Chat so that new posts don't pop up at the beginning and are put at the end? Is it just me or do others feel this Live Chat is impossible to read when lots of people are inputting new posts and things keep scrolling? I have to wait until people stop posting to read!

@ALL: For those of you who thought the "blink" application is a good start for Arduino programming, search for the Blink no delay" version, which eliminates the need to have your code stuck waiting for that delay, allowing the code to acoomplish more tasks at every iteration of the loop().

Yes it can. I didn't cover this information in the lecture or the book because of the abstraction level to explain how that works virtually. People can relate to resistors better than the software concept

I recall that this magazine Design News had a Gadget Freak #241 that featured a glove with a tilt sensor that was used to control a RC airplane.http://www.designnews.com/author.asp?section_id=1362&doc_id=263367As I recall, they used a PIC MCU but the code could be easily done on an Arduino. The only problem would be that the Arduino is kinda heavy for a model airplane.

@All: The delay is only practical for low risk applications. It is not load robust in the sen=se that for different loads you will need to choose another delay. The other problem is parameter variation under different environment circumstances.

Re: the pull down resistor - if you don't have either a pull-up or pull-down resistor to pull an open-switch condition to either the V+ or GND level, an open-switch condition basically connects an antenna to the digital input pin and you get very indeterminate results. I know this from experience.

FYI, Adafruit Industries offers a small servo with a 4th wire which reports back the shaft position of the motor. This is useful for analog inputs and verification that your motor is actually where you told it to go.

@etarlac, A servo has internal circuitry. There is a potentiometer that measures the output position and a driver IC that controls a DC motor. The output position depends on the pulse width input. A narrow width turns the output one way, a wide width turns it the other way. Typically a 1 ms width sets the output to the center position. They were originally used for radio controlled toys.

Just did a Google on H-bridge. If I'm understanding it correctly, you could use two digital outputs from the Arduino to determine which direction the motor turns in, correct? A single MOSFET would only control the motor to run in one direction.

I've used MOSFETs and an arduino to switch brushless fans (not PWM speed control in that case) and Peltier modules.

@Curtis compsumtion of Arduino dependen of speed of crrytal, the work that him are doing (intensive calculatión are more power hungry) and the peripheral that you conect, only it compsume less than 200mA, a battery will be enoght for 24 hour or more, depend of the work of peripherals.

You could drive a DC motor if the current is less than the Arduino I/O max. You could use a transistor to control a motor with higher voltage and/or curent. You would need an H bridge if you wanted to reverse directions.

Arduino should be able to drive a DC motor. It would need to provide a variable output voltage to drive the DC motor and have enough current drive to power it. It may required a power amplifier to convert a low-power output voltage to a higher-power output voltage.

Yes it is possible but you would need a switch bridge to allow for reverse as well as higher drive current. Also the software will need to take into account the current assumed position to avoid continuous run in the return direction.

Yes, you can operate a DC motor with the Arduino. You need to use a buffer transistor because the motor will need more power than the Arduino can supply from its PWM output. And, unless you build a H-bridge, the direction will be one-way.

So I guess when you tilt one direction the servo goes to one set limit and when tilit is removed teh servo resets? Looking at teh code it looks like the servo will continuously try to reset to 0 degrees one tilt is removed.

In response to an earlier question, I don't think R1 is actually a "voltage divider", rather it is more of a "pull-down resistor" that makes sure the digital input is low when the tilt sensor/switch is open. You could also reverse the order of R1 and the tilt switch so that R1 is a pull-up resistor and the switch ties the input to ground. Then, once you can picture the circuit with a pull-up resistor, you can actually configure the pin to provide the pull-up resistor function within the Atmel chip, so R1 actually becomes unnecessary.

In the time it took be to type this, I see that other people have made similar comments.

@What is physical computing? This seems in principle to be another unnecessary buzz-concept. Since the begining of Von-Neuman computers humans interact with computers at least on a terminal. Besides, A bit is a bit, a byte is a byte no matter how we dice and dress them.

Physical computing is the reaction to and manipulation of the real world from within a software/computer system. Physical computing devices in gaming consoles include Kinect, Wiimote, controller rumble packs etc.

Hi all -Audio is live! If you don't see the audio bar at the top of the screen, please refresh your browser. It may take a couple tries. When you see the audio bar, if it doesn't start automatically, hit the play button. If you experience audio interruptions and are using IE, try using FF or Chrome as your browser. Many people experience issues with IE. Also, make sure your flash player is updated with the current version. Some companies block live audio streams, so if that is the case for your company, the class will be archived on this page immediately following the class and you can listen then. People don't experience any issues with the audio for the archived version.

-The streaming audio player will appear at the top of this web page when the show starts at 2 PM Eastern time today. If the audio doesn't start automatically, click on the play button to start it. Note however, that some companies block live audio streams. If when the show starts, the audio bar doesn't appear or you don't hear any audio, try refreshing your browser. If that doesn't work, try using Firefox or Google Chrome as your browser. Some users experience audio interruptions with IE. Also, make sure your flash player is updated with the current version. If that doesn't work, your company is likely blocking the live stream. The class will be archived immediately following our live taping and you will be able to listen to it then. You shouldn't experience any problems with the audio when listening on-demand.

-You are eligible to earn IEEE Professional Development Hours by attending these courses and participating in the chat function. Additionally, we are no longer using the points system, offering "graduation", or giving grades. The IEEE hours are taking the place of that. There are some important things for you to know about earning the hours. The most important ones are that you need to attend these courses live, you need to attend a minimum of two of them per semester, you need to fill out a course evaluation form within 2 weeks of the end of the class, you need to attend 4 out of the 5 classes per course, and you need to participate in the chat function every day you attend. Please click on the link at the top of this page that says "How do I earn IEEE professional development hours" to read all of these important details and more.

-Please join our Digi-Key Continuing Education Center LinkedIn Group at http://linkd.in/yoNGeY and be sure to follow @designnews and @DigiKeyCEC on Twitter for the latest class information. We encourage you to tweet about today's class using #DigiKeyCEC.

Focus on Fundamentals consists of 45-minute on-line classes that cover a host of technologies. You learn without leaving the comfort of your desk. All classes are taught by subject-matter experts and all are archived. So if you can't attend live, attend at your convenience.