Commit b670c637 authored by Philip Hozier's avatar Philip Hozier
Browse files

week12 28/4 update #2

parent 52426fe7
Pipeline #227026 passed with stages
in 21 seconds
......@@ -45,7 +45,7 @@ Demonstrate workflows used in controlling an output device(s) with MCU board you
---
## Group Assignment
![Individual Assignment](../week4/individual-assignment.jpg "my FDTI")
![Group Assignment](../week12/group-hero.jpg "group hero shot")
- Measure the power consumption of an output device.
- Document your work (in a group or individually).
......@@ -78,6 +78,8 @@ where ohm is the unit of electrical resistance.
### What we did
---
![Group Assignment](../week12/group2.jpg "group shot")
To start to measure the power usage of components, we connected a (analogue) power bank to a Arduino Leonardo (with servo program) to a servo.
- Power bank (analogue)
......@@ -90,13 +92,15 @@ We slowly started to restrict the amount of voltage coming from the power bank,
Interesting we tried to compare the voltage signal for the servo when powered by the USB port of a laptop and then the power bank. The voltage was more stable from the power bank, and we could see lots of noise from the laptop battery/board.
![Group Assignment](../week12/group1.jpg "group shot")
We also decided to measure amps using the power bank meters. We found the servo takes more than 5mA, which was the maximum that the laptop USB specifications could provide could provide.
Using the oscilloscope we also read there was a large voltage spike/drop when the servo is sent a signal to move. The servo had a sort of current inertia that the servo's magnets needed to generate to create a higher magnetic field to overcome it's magnetic field's resting state.
**Measuring a separate voltage regulator with a multimeter**: V in, GND, V out.
It turns out regulator is very inefficient, needs 1+v to work. So threshold V in from power bank is 1+v over V out of the regulator. Any voltage supplied above that threshold is dissipated as heat, which is why it has a fixing to attach to a heat fin.
It turns out the regulator is very inefficient, it needs 1+ volts to work. So threshold V in from power bank is 1+v over V out of the regulator. Any voltage supplied above that threshold is dissipated as heat, which is why it has a fixing to attach to a heat fin.
**Measuring unknown toy motor**
......@@ -117,7 +121,7 @@ All the servos we tried to use to measure were all faulty or not working at all.
---
## Individual Assignment
![Individual Assignment](../week4/individual-assignment.jpg "my FDTI")
![Individual Assignment](../week12/individual-hero-temp.jpg "My output")
- Add an output device to a microcontroller board you've designed and program it to do something.
......@@ -188,7 +192,7 @@ button as an input source to trigger the output response of the board.
- Set up project.
- Open 'schematic layout editor'.
![Individual Assignment](../week10/kicad2.jpg "KiCad 2")
![Individual Assignment](../week12/kicad-schematic.jpg "KiCad 2")
- Place 'Symbols'.
- Attach 'Global labels'.
......@@ -199,7 +203,7 @@ button as an input source to trigger the output response of the board.
- Run 'Assign PCB footprints to schematic symbols'.
- Run 'PcbNew to layout printed circuit board'.
![Individual Assignment](../week10/kicad3.jpg "KiCad 3")
![Individual Assignment](../week12/kicad-pcb.jpg "KiCad 3")
- Set design rules with 'Board Setup'.
- Track 'Routes' and manipulate components rotation/position.
......@@ -211,7 +215,7 @@ button as an input source to trigger the output response of the board.
Power and GND comes in from two of the UPDI header pins, or from the FTDI header, depending if I'm uploading programs or debugging with the serial communication.The VCC drops from 5v by approx. 1.2v in the voltage regulator to 3.3v. The power signal is then 'smoothed' by the capacitor.
3.3v is feed to the ATtiny1614 and the common anode of the RGB LED. This means, that the RGB LED will be activated with a LOW signal, and the separate LEDs activated by a HIGH signal from the ATtiny1614.
3.3v is feed to the ATtiny1614 and the common anode of the RGB LED. This means, that the RGB LED will be activated with a LOW signal (thanks [Erwin](http://fabacademy.org/2021/labs/waag/students/kooi-erwin "Erwin Kooi") for that nugget of knowledge), and the separate LEDs activated by a HIGH signal from the ATtiny1614.
The button will be the input to start the program uploaded to the IC.
......@@ -222,11 +226,13 @@ wide, and cut one track.
**Soldering the board**
As usual, positioning these small components with small connection points was the most difficult. Tinning theses and the pads where they would go with the minimum amount of solder was important. Flux was my friend here, as it ensured that the small amount of solder on both surfaces was enough to make a firm connection.
As usual, positioning these small components with small connection points was the most difficult. Tinning these and the pads where they would go with the minimum amount of solder was important. Flux was my friend here, as it ensured that the small amount of solder on both surfaces was enough to make a firm connection.
**Board Testing**
As explained below in the Issues and Mistakes, the continuity testing gave the impression that this boards production had gone very well. Until the ultimate test of trying to upload a program to the IC. When this didn't work straight away, the various error messages weren't helpful, as there was no results from the internet search engine.
![Individual Assignment](../week12/errors.jpg "Unhelpful Error messages")
As explained below in the Issues and Mistakes, the continuity testing gave the impression that this board's production had gone very well. Until the ultimate test of trying to upload a program to the IC. When this didn't work straight away, the various error messages weren't helpful, as there was no results from the internet search engine.
I then had to take a step backwards and test from there. The problem could've been anywhere from the UPDI, wires connecting it to the board, and of course the board itself with all the components on it.
......@@ -240,6 +246,8 @@ So began the querying of all the components on the board. And even the soldering
**Programming**
![Individual Assignment](../week12/strange-results.jpg "strange results")
I had prepared some programming the night before, and when it was possible to complete the uploading sequence i noticed some strange activity of the LEDs that weren't in the program. So was there a problem with my simple programming or still a problem with the board? But to test this I would have to upload different programs. Which was still a difficult thing to do, and get the same error each time.
So check all the wires, UPDI boards, and the my board again. It probably would've been quicker to mill and solder another board, and i'm guessing less problems. But perseverance and a lot of soldering gets it working.
......@@ -252,6 +260,8 @@ I programmed the board to have different 'modes'. With each mode triggering a se
**When designing**
![Individual Assignment](../week12/tracing-problems.jpg "tracing problems")
Make sure any tracks that run parallel at any point, turn at the same angle. Giving the milling machine the best chance possible of getting in between them. Even with the correct design rules the milling bit can fail to get in between these 'meeting of directions';
Got the Rx and Tx connections the right way around.
......@@ -298,4 +308,12 @@ As for my final project this RGB output will suffice, and now i have some experi
---
## FILES
---
\ No newline at end of file
---
| **FILE** | **DESCRIPTION** |
|---|----|
| [Traces](../week12/3-axis-accelerometer-F_Cu_500.png "Traces") | The traces for milling. |
| [Interior](../week12/wk12-RGB-LED-TRACES.png "Interior") | The interior for milling. |
| [ATtiny1614 datasheet](../week12/ATtiny1614-16-17-DataSheet-DS40002204A.pdf "ATtiny1614 datasheet") | ATtiny1614 datasheet. |
| [ATtiny1614 datasheet](../week12/CLV1A-FKB_RGB-LED-datasheet.pdf "CLV1A-FKB RGB LED datasheet") | CLV1A-FKB RGB LED datasheet. |
| [KiCad](../week12/KiCad-RGB-LED.zip "KiCad files" | KiCad files |
\ No newline at end of file
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment