output devices

week_11

assignment

Group assignment: Measure the power consumption of an output device.

Individual assignment: Add an output device to a microcontroller board you've designed and program it to do something.

experimentation

Group Assignment - participants:Josep Marti, Felipe Santos, Alberto Lopez, Diar Amin, Gustavo Abreu

To measure the power consumption of a device with a multimeter you have turn the knob to the uA~/- or mA~/- positions and use the fused positive connection of the multimeter, plug the probes in series with the VCC of your device and turn it on.

Individual assignment:

My fascination by light was obvious from 2016 round when I started with the eagle schematix of the charlieplexing board. and so I checked the file and was trying to continue with this...

Charlieplexing is a technique for driving a multiplexed display in which relatively few I/O pins on a microcontroller are used e.g. to drive an array of LEDs. The method uses the tri-state logic capabilities of microcontrollers in order to gain efficiency over traditional multiplexing.*wikipedia source

Charlieplexing Charlieplexing tutorial

#charlieplexing

#charlieplexing - conclusion: this was a nice example to get into an output devices, anyway since it was done in 2016 and I didnt continued with it, I decided to skip it and develop a solution with already embeded LEDs - to check how can I include LED Strip within my final project design...

Of course I wanted to focuse on embeding this weeks assignment to my final project. So I started to check several options, how to work with LEDs, LED rings, LED strips. Adafruit Neopixel LED Strip was the first option since we had it in our lab. When considering code - it uses the Adafruit Neopixel Library so it is needed to install its libraries first into the Arduino IDE. no need to download anything from external website, library installation options are already included in Arduino. To do this you can go to Sketch > Include Library > Manage Libraries and download wished library and just start to use it also with its examples ;)

this tutorial is explaining a basics of working with neopixels and is a very helpful intro to get into it!

As I already installed the libraries and burned the bootloader last week, I dont have to do it now... It was important to focus on the neopixel output part. Than the code part again. It was necessary to install neopixel libraries, the same way trough the Library manager inside the Arduino. it comes with premade sketch examples so I took one too and adjusted the code a bit. Antoher point was the frequency of the clock. Neopixel are made to be used at 8MHz or 16MHz the code cannot compile unless I set 8Mhz (internal) as fuse (bootloader). For using ATtiny84 it was needed to change Serial to mySerial and mySoftwareSerial all over the code. Checking connections to relevant pins and their usage. what pins is related to what task, check where is the connection for LDR and LEDstrip…Than calibration of the sensor part… It's pretty simple, it reads the value from the LDR and if it's below 975 it lights up the LED. Why 975? I tested the LDR by reading and printing the values on serial monitor it reads and I noticed when I cover the LDR the values are always below 975. The process you can see screenshoted below and at the end there is also a video demonstrtion.

In according to understand the logic behind neopixel/LED strip works, this source is very rich for an information so I went trough it: https://learn.adafruit.com/adafruit-neopixel-uberguide/powering-neopixels it works! yes

download files

keywords

_module_machine_sensors_actuators_power electronics_open/closed-loop control_static/dynamic paths_PID, acceleration, model predictive control_embedded, virtual control_real-time networks_file formats_toolpath planning_design representation_geometry solver_

useful links

FabAcademy 2019_notes_week_11