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

week12 - update 28/4 #1

parent 66389098
......@@ -173,13 +173,12 @@ TO be ultra safe have as much support as possible, its probably best to try and
| **COMPONENT** | **DESCRIPTION** | **DATA SHEET** | **SPECIFICATIONS** |
|---|----|---|----|
|**ADXL343BCCZ-ND** | 3 axis accelerometer | [ADXL343-Datasheet.pdf](../week10/AADXL343-3Axis_Accelerometer-Datasheet.pdf) | MAX V{{< rawhtml >}}<sub>s</sub>{{< /rawhtml >}} / V{{< rawhtml >}}<sub>DD</sub>{{< /rawhtml >}} = 3.9v |
| **UPDI Header pins** | To allow board programming/serial communication. | | |
| **Extra Header pin** | To connect to the UPDI+5v board. | | |
| **ATtiny412** | | [Attiny212-412_datasheet.pdf](../week10/Attiny212-412_datasheet.pdf) | Polarity |
| **Voltage regulator** | To drop the input voltage by 1.2 v for the sensor. | [LM3480_datasheet.pdf](../week10/lm3480.pdf) | Polarity |
| **Capacitor (1µ)** | To stabilize power signal. | | Non-polarity |
| **Resistor (10k) x2** | To control amount of current going to ATtiny412. | | Non-polarity. |
| **CONN: UPDI 01x02 male (x2)** | UPDI Tx/Rx communication, GND one component. And VCC, not connected on the other component. | | |
| **CONN: UPDI 01x03 male** | UPDI Tx/Rx communication, GND one component. And VCC, 5+V | | |
| **Resistor (0 Ohm)** | To use as a bridge for tracks to run underneath. | | |
**KiCAD**
......@@ -226,8 +225,6 @@ Eventually after applying the correct design rules (not done at the right time),
*Side note:* as I had modified the board to accept UPDI with a power connection, i will have to make a modified UPDI to work with my new board - 2 for 1 boards in this assignment. All that will be modified from the previous version were the communication female pins swapped to male pins, and a single one added to the +5v track of the USB. Jumper cables will be used between the male pins of the UPDI, and the male pins of the sensor's board.
**Soldering the board**
![Individual Assignment](../week10/week10-hero1.jpg "Soldered Board")
......
---
title: Week 12
description: Week 12 - Output Devices
author: Philip Hozier
type: docs
label: FAB ACADEMY
date: "2021-04-22"
publishdate: "2021-04-22"
draft: false
---
# OUTPUT DEVICES
![Workflow - Sketch](../week1/workflow-800px67.jpg "Workflow - Sketch")
---
## Summary
---
Finally a board that I've managed to design and make work! (still working as I right this). It's been tough going, with the circuit not being finished until you are satisfied that the programming of the board is complete.
---
## What I thought I knew before
---
Everything I've been able to learn and absorb from the other electronics assignments.
---
## Learning Outcomes
---
Theory and use of things i learnt from this assignment:
Demonstrate workflows used in controlling an output device(s) with MCU board you have designed.
---
## Lessons to take away
---
- Test each complex component on the board as you solder it to the board.
- Systematically check each part of the circuit route and its connections to the computer if there are problems.
---
## Group Assignment
![Individual Assignment](../week4/individual-assignment.jpg "my FDTI")
- Measure the power consumption of an output device.
- Document your work (in a group or individually).
> Power is the amount of energy transferred or converted per unit time. The unit of power is the watt, equal to one joule per second.
Power is the rate with respect to time at which work is done; it is the time derivative of work:
{{< rawhtml >}}
<img src="../week12/power-equation.svg" alt ="power-equation" title="Power equation" style="max-width:20%; margin:auto">
{{< /rawhtml >}}
</br>
where P is power, W is work, and t is time.
> One Watt is the rate at which electrical work is performed when a current of one ampere (A) flows across an electrical potential difference of one volt (V), meaning the watt is equivalent to the volt-ampere.
</br>
</br>
{{< rawhtml >}}
<img src="../week12/watt-equation.svg" alt ="power-equation" title="Power equation1" style="max-width:30%; margin:auto">
{{< /rawhtml >}}
> Two additional unit conversions for watt can be found using the above equation and Ohm's law.
</br>
{{< rawhtml >}}
<img src="../week12/watt-equation1.svg" alt ="power-equation" title="Power equation2" style="max-width:40%; margin:auto">
{{< /rawhtml >}}
</br>
</br>
where ohm is the unit of electrical resistance.
---
### What we did
---
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)
This could deliver a steady voltage of between 0 and 20v, or a steady current of 0 to 2A.
We measured the Arduino board and found only 4v coming out of Arduino board to power the servo. Increasing the voltage to 7.5v into board, the voltage coming out for the servo was 5v. This mean we could safely assume there was a voltage regulator in between the V in and V out to the servo, which was taking some voltage to work itself.
We slowly started to restrict the amount of voltage coming from the power bank, to a point where the Arduino board just failed to deliver 5v to the servo. The difference between the voltage delivered by the power bank, and the 5v delivered to the servo is the amount of voltage that the regulator (and the board) needs itself.
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.
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.
**Measuring unknown toy motor**
Lucia brought in some old toy motors to play around with and measure. So we slowly raised the voltage from 0 on the power bank. 3v were needed to start to move the motor. With a steady 5v added, 4.14v was measured at the motor. We flicked a switch on power bank to change the mode of delivery to Amps. This was an easy way of measuring the amount of current, and we knew that voltage was 5v. Volts * Amps = Watts (Power!)
Interesting thing I learned about the digital multimeters, was that the connections on the left side for the probes has a known value resistor inside. This dissipates heat allowing higher currents to be measured. It has a lower value resistor in parallel with the voltage meter. The multimeter then measures the voltage drop across the resistor to work out the Amps. V=I*R (R is too small to make a difference).
---
### Mistakes & Issues
---
**Oscilloscope measured 45v coming out of the power bank**
This didn't match with the ~5v coming our of the power bank. AFter much checking of the settings on the oscillocsope we found someone had enabled the 'x 10' button so the signal on screen of oscilloscope was reading 10 times that of what was coming in. So it looked like 45v coming out of the power bank. To double check we measured the output of the power bank with a digital voltmeter - 5v!
**Servos**
All the servos we tried to use to measure were all faulty or not working at all. So we didn't see much signal of them working on the oscilloscope.
---
## Individual Assignment
![Individual Assignment](../week4/individual-assignment.jpg "my FDTI")
- Add an output device to a microcontroller board you've designed and program it to do something.
---
## Concept
---
The idea was to continue with the board i made for the [Input](../week10/) week with an RGB LED output. Since that was some what of a failure, there was some serious improvements to be made. As this combination of a 3 axis accelerometer coupled with a RGB LED it was imperative that i could develop this further. See the [updates](../week10/) to Week 10.
As i tried to redesign the board with a RGB LED and the corrections to make the the board work, I realised that there was some serious programming going to be needed to get a reasonable output. Further research into the sensor revelaed that it 'speaks' to the IC in I2c or SPI protocols. Something I was advised not to go near until the ['Communications week'](../week13/). Taking that into account, I needed to come up with a board to complete the assignment. So I came to the conclusion that i could still create a board with an RGB LED, on a larger IC (ATtiny1614). Basically the same board I made before, but without the sensor. Because the RGB LED used separate input pins for each of the colours, I would need to upgrade the original ATiny412 I had previously used, i would have to use a ATtiny1614 with more pins.
At a later point, I would be able to combine the sensor and the RGB LED to a ATtiny1614 on the same board and program the IC with my future knowledge of SPI and I2C.
So with this new direction, I designed a board with an RGB LEd, as well as some separate coloured LEDs to use up some of the extra input pins on the ATtiny1614. Different from the input board, I added a button to add a simple input to the board instead of the sensor, and a serial output for debugging (missing in the input board).
This would be the basis (minus the 3 axis sensor) of a 'development board' for my final project that I could use to
develop and debug the system, before making a final 'production board' version. I would design it in such a way as to allow the easy removal of components like the serial header pins and associated tracks for debugging that wouldn't be needed on the 'production board' once it had been developed.
---
## What I did
---
First of all was to search for the relevant circuits that i could use as a starting point for my board.
![RGB LED](../week12/hello.RGB.45-explained.jpg "RGB LED explained").
**Design criteria**
This will closely match as possible the perceived design criteria for my final project.
- Small form factor. The final project is intended to fit on the wrist as a 'wearable' piece of technology.
- Powered by a button battery or 'rechargeable battery unit'. (3.3v-5v?)
- Include a RGB LED. Whose hue, saturation and luminescence will be dictated by the 3 axis accelerometer in the future.
With an eye on the future spirals a little thought should go into including the following list of criteria into the design.
- The RGB LED part of the circuit should easily transpose to another circuit.
- The FTDI connection should be placed in such a way that it can be easily removed from the circuit schematic without the need for too much re-routing of the traces.
**Initial decisions**
The board would be designed around the ATtiny1614 for the extra pins, so it can handle the future sensor and
the 3 inputs needed for the RGB LED alone. The FTDI will be placed in a position that can easily be removed when there is no need to debug.
To use up some of the extra pins (due to no sensor) I will add some extra single LEDs. As well as a replacement
button as an input source to trigger the output response of the board.
**BOM**
| **COMPONENT** | **DESCRIPTION** | **DATA SHEET** | **SPECIFICATIONS** |
|---|----|---|----|
| **3 UPDI Header pins** | To allow board programming/UPDI communication. Plus power 5v | | Non-polarity. |
| **ATtiny1614** | More pins than the ATtiny1614 | [ATtiny1614-16-17-DataSheet-DS40002204A.pdf](../week12/ATtiny1614-16-17-DataSheet-DS40002204A.pdf "ATtiny1614 datasheet") | Polarity |
| **Voltage regulator** | To drop the input voltage by 1.2 v for the sensor. | [LM3480_datasheet.pdf](../week10/lm3480.pdf) | Polarity |
| **Capacitor (1µ)** | To stabilize power signal. | | Non-polarity |
| **Resistor (0 Ohm) x2** | To use as a bridge for tracks to run underneath. | | Non-polarity. |
| **Resistor (4.9k Ohm) x3** | To control amount of current going to the separate LEDs | | Non-polarity. |
| **Resistor (1k Ohm) x2** | To control amount of current going to the Red + Green of the RGB LED | Non-polarity. | Non-polarity. |
| **Resistor (499 Ohm)** | To control amount of current going to the Blue of the RGB LED | | Non-polarity. |
| **Button B3 SN** | Input source. | | Non-polarity. |
| **FTDI header pins** | To allow serial communication. | | Non-polarity. |
| **RGB LED, CLV1A-FKB** | To allow serial communication. | [RGB-LED-datasheet.pdf](../week12/RGB-LED-datasheet.pdf "RGB-LED datasheet")| Polarity |
**KiCAD**
![Individual Assignment](../week10/kicad1.jpg "KiCad 1")
- Set up project.
- Open 'schematic layout editor'.
![Individual Assignment](../week10/kicad2.jpg "KiCad 2")
- Place 'Symbols'.
- Attach 'Global labels'.
- Place direct connections with 'Wire's if needed.
- Place 'no connection' where needed (to stop errors).
- Place 'PWR FLAG's to suppress power errors.
- Run 'Electrical Rules Check'.
- Run 'Assign PCB footprints to schematic symbols'.
- Run 'PcbNew to layout printed circuit board'.
![Individual Assignment](../week10/kicad3.jpg "KiCad 3")
- Set design rules with 'Board Setup'.
- Track 'Routes' and manipulate components rotation/position.
- Run 'Perform design rules check'.
- Draw outline of board with 'graphic polygon' tool, on 'Edges cut' Layer.
- Export '.svg', for the traces layer ('F.Cu') and interior layer ('Edges cut').
**What i think the circuit does.**
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.
The button will be the input to start the program uploaded to the IC.
**Board Production**
This went surprisingly well considering my history with the small milling machine. The traces looked nice and neat. And not much space was wasted on this small board. But of course there was a problem - the edge cuts were too
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.
**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.
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.
With varying errors and unrepeatable results, I spent many hours beating my head against the proverbial brick wall trying to find out what was wrong, and where.
Isolating and testing each individual element up to the board, as the most obvious error was a UPDI connection problem. The board's UPDI connection was connected fine so i didn't think the problem was there.
Eventually it came down to the realisation that the ATTiny1614 was bad. An internal connection (see below) between pins 7 and 14 made during the manufacture. But it doesn't stop there. Hoping that this would solve all the errors when plugged in and a program uploaded, I was somewhat disappointed when the same and other errors popped up instead.
So began the querying of all the components on the board. And even the soldering (even though there was so little solder used) came into question.
**Programming**
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.
I programmed the board to have different 'modes'. With each mode triggering a sequence lighting the LEDs.
---
## What I should’ve done
---
**When designing**
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.
Fixed the cut out lines in Illustrator when converting from a .SVG to a .PNG (at 500 dpi).
**When Board Testing**
Had some better luck! So many small problems even when the continuity tests gave the impression everything was fine.
---
## Mistakes & Issues
---
**Illustrator lines!**
I forgot to modify the lines that Illustrator creates to define shapes. This lead to the milling machine to cut out the board too close to the traces (especially with the 0.8mm milling bit). Some of the traces next tot he edge are very thin, with one track cut and in need of a jumper wire.
**Faulty IC**
As unlikely as it is, out of all the thousands made, i managed to find a bad ATtiny1614. Continuity tests showed ('beeped') that pins 7 and 14 were connected somehow. Pin 7 went to Rx only a short distance away, but the test was saying it had a connection with the GND, which was no where nearby. Unsoldering the chip confirmed that no tracks were connected accidentally underneath the IC. But re-soldering again had the same problem.
Taking it off and replacing with a new ATtiny1614 solved the problem, and a continuity test on the bad chip confirmed the pins were connected internally for some reason.
**Faulty Circuit connections**
Even though the circuit pads were so small and I used minimal solder, there seemed to be something wrong going on with the board still. Continuity tests as far as i could go gave the impression nothing was connected properly. Only when I tried to upload programs to the IC did I get various errors. And rarely the same error twice in a row. this lead to several more hours of trying to diagnose what was wrong in the pathway to program the IC.
I tried using different UPDI boards, wires and my even working Hello board to try to gain an insight where the problem was. None the wiser, I continued to try to upload onto the new board and managed at one point. The simple program light up the LED's when I pressed the button. When when they should be off, one LED would stay on. A different one each time. Most of the time, it was the green LED of the RGB LED.
I focussed on this LED first. Continuity test i could do led me to believe there was no extra connections. So I unsoldered the RGB LED and repositioned it. To be on the safe side (and because the resistor was so close), I removed as much of the solder around the resistor as i could in preparation of removing and repositioning it. I thought i'd just try a continuity test, just in case too much solder (it was such a tiny amount i used originally). And it worked! well that green LED stopped working when it should do. But the problem just moved to one of the separate LEDs instead. So I tried the same trick on all of those resistors, removing as much solder from them as well. With all of these components hanging onto the board with the absolute minimum of solder it was able to receive programs!
**Rx, Tx around the wrong way**
I got these the wrong way around in the original circuit diagram (a correctly modified image is above). The concept of Rx of the ATtiny going to the Tx of the FTDI is what i understood in theory. However the Rx label in the footprint of the FTDI connection pins (in Kicad) is there to help you see where you have to connect the Rx pin (in reality it is the Tx of the FTDI).
---
## CONCLUSION
---
My electronics is getting better. I am capable of designing a new circuit and it working! :) Although when there are problems with the board i'm lacking the experience to know what the errors mean and fix them quickly.
As for my final project this RGB output will suffice, and now i have some experience programming and controlling it. I also accidentally left in the voltage regulator which was used to give the 3 axis accelerometer 3.3v, but the RGB LED can also work with that
---
## FILES
---
\ No newline at end of file
<svg xmlns:xlink="http://www.w3.org/1999/xlink" width="9.331ex" height="5.509ex" style="vertical-align: -2.005ex;" viewBox="0 -1508.9 4017.6 2372" role="img" focusable="false" xmlns="http://www.w3.org/2000/svg" aria-labelledby="MathJax-SVG-1-Title">
<title id="MathJax-SVG-1-Title">{\displaystyle P={\frac {dW}{dt}}}</title>
<defs aria-hidden="true">
<path stroke-width="1" id="E1-MJMATHI-50" d="M287 628Q287 635 230 637Q206 637 199 638T192 648Q192 649 194 659Q200 679 203 681T397 683Q587 682 600 680Q664 669 707 631T751 530Q751 453 685 389Q616 321 507 303Q500 302 402 301H307L277 182Q247 66 247 59Q247 55 248 54T255 50T272 48T305 46H336Q342 37 342 35Q342 19 335 5Q330 0 319 0Q316 0 282 1T182 2Q120 2 87 2T51 1Q33 1 33 11Q33 13 36 25Q40 41 44 43T67 46Q94 46 127 49Q141 52 146 61Q149 65 218 339T287 628ZM645 554Q645 567 643 575T634 597T609 619T560 635Q553 636 480 637Q463 637 445 637T416 636T404 636Q391 635 386 627Q384 621 367 550T332 412T314 344Q314 342 395 342H407H430Q542 342 590 392Q617 419 631 471T645 554Z"></path>
<path stroke-width="1" id="E1-MJMAIN-3D" d="M56 347Q56 360 70 367H707Q722 359 722 347Q722 336 708 328L390 327H72Q56 332 56 347ZM56 153Q56 168 72 173H708Q722 163 722 153Q722 140 707 133H70Q56 140 56 153Z"></path>
<path stroke-width="1" id="E1-MJMATHI-64" d="M366 683Q367 683 438 688T511 694Q523 694 523 686Q523 679 450 384T375 83T374 68Q374 26 402 26Q411 27 422 35Q443 55 463 131Q469 151 473 152Q475 153 483 153H487H491Q506 153 506 145Q506 140 503 129Q490 79 473 48T445 8T417 -8Q409 -10 393 -10Q359 -10 336 5T306 36L300 51Q299 52 296 50Q294 48 292 46Q233 -10 172 -10Q117 -10 75 30T33 157Q33 205 53 255T101 341Q148 398 195 420T280 442Q336 442 364 400Q369 394 369 396Q370 400 396 505T424 616Q424 629 417 632T378 637H357Q351 643 351 645T353 664Q358 683 366 683ZM352 326Q329 405 277 405Q242 405 210 374T160 293Q131 214 119 129Q119 126 119 118T118 106Q118 61 136 44T179 26Q233 26 290 98L298 109L352 326Z"></path>
<path stroke-width="1" id="E1-MJMATHI-57" d="M436 683Q450 683 486 682T553 680Q604 680 638 681T677 682Q695 682 695 674Q695 670 692 659Q687 641 683 639T661 637Q636 636 621 632T600 624T597 615Q597 603 613 377T629 138L631 141Q633 144 637 151T649 170T666 200T690 241T720 295T759 362Q863 546 877 572T892 604Q892 619 873 628T831 637Q817 637 817 647Q817 650 819 660Q823 676 825 679T839 682Q842 682 856 682T895 682T949 681Q1015 681 1034 683Q1048 683 1048 672Q1048 666 1045 655T1038 640T1028 637Q1006 637 988 631T958 617T939 600T927 584L923 578L754 282Q586 -14 585 -15Q579 -22 561 -22Q546 -22 542 -17Q539 -14 523 229T506 480L494 462Q472 425 366 239Q222 -13 220 -15T215 -19Q210 -22 197 -22Q178 -22 176 -15Q176 -12 154 304T131 622Q129 631 121 633T82 637H58Q51 644 51 648Q52 671 64 683H76Q118 680 176 680Q301 680 313 683H323Q329 677 329 674T327 656Q322 641 318 637H297Q236 634 232 620Q262 160 266 136L501 550L499 587Q496 629 489 632Q483 636 447 637Q428 637 422 639T416 648Q416 650 418 660Q419 664 420 669T421 676T424 680T428 682T436 683Z"></path>
<path stroke-width="1" id="E1-MJMATHI-74" d="M26 385Q19 392 19 395Q19 399 22 411T27 425Q29 430 36 430T87 431H140L159 511Q162 522 166 540T173 566T179 586T187 603T197 615T211 624T229 626Q247 625 254 615T261 596Q261 589 252 549T232 470L222 433Q222 431 272 431H323Q330 424 330 420Q330 398 317 385H210L174 240Q135 80 135 68Q135 26 162 26Q197 26 230 60T283 144Q285 150 288 151T303 153H307Q322 153 322 145Q322 142 319 133Q314 117 301 95T267 48T216 6T155 -11Q125 -11 98 4T59 56Q57 64 57 83V101L92 241Q127 382 128 383Q128 385 77 385H26Z"></path>
</defs>
<g stroke="currentColor" fill="currentColor" stroke-width="0" transform="matrix(1 0 0 -1 0 0)" aria-hidden="true">
<use xlink:href="#E1-MJMATHI-50" x="0" y="0"></use>
<use xlink:href="#E1-MJMAIN-3D" x="1029" y="0"></use>
<g transform="translate(2085,0)">
<g transform="translate(120,0)">
<rect stroke="none" width="1692" height="60" x="0" y="220"></rect>
<g transform="translate(60,676)">
<use xlink:href="#E1-MJMATHI-64" x="0" y="0"></use>
<use xlink:href="#E1-MJMATHI-57" x="523" y="0"></use>
</g>
<g transform="translate(403,-715)">
<use xlink:href="#E1-MJMATHI-64" x="0" y="0"></use>
<use xlink:href="#E1-MJMATHI-74" x="523" y="0"></use>
</g>
</g>
</g>
</g>
</svg>
\ No newline at end of file
<svg xmlns:xlink="http://www.w3.org/1999/xlink" width="15.882ex" height="2.176ex" style="vertical-align: -0.338ex;" viewBox="0 -791.3 6838 936.9" role="img" focusable="false" xmlns="http://www.w3.org/2000/svg" aria-labelledby="MathJax-SVG-1-Title">
<title id="MathJax-SVG-1-Title">{\displaystyle \mathrm {1~W=1~V\cdot 1~A} }</title>
<defs aria-hidden="true">
<path stroke-width="1" id="E1-MJMAIN-31" d="M213 578L200 573Q186 568 160 563T102 556H83V602H102Q149 604 189 617T245 641T273 663Q275 666 285 666Q294 666 302 660V361L303 61Q310 54 315 52T339 48T401 46H427V0H416Q395 3 257 3Q121 3 100 0H88V46H114Q136 46 152 46T177 47T193 50T201 52T207 57T213 61V578Z"></path>
<path stroke-width="1" id="E1-MJMAIN-57" d="M792 683Q810 680 914 680Q991 680 1003 683H1009V637H996Q931 633 915 598Q912 591 863 438T766 135T716 -17Q711 -22 694 -22Q676 -22 673 -15Q671 -13 593 231L514 477L435 234Q416 174 391 92T358 -6T341 -22H331Q314 -21 310 -15Q309 -14 208 302T104 622Q98 632 87 633Q73 637 35 637H18V683H27Q69 681 154 681Q164 681 181 681T216 681T249 682T276 683H287H298V637H285Q213 637 213 620Q213 616 289 381L364 144L427 339Q490 535 492 546Q487 560 482 578T475 602T468 618T461 628T449 633T433 636T408 637H380V683H388Q397 680 508 680Q629 680 650 683H660V637H647Q576 637 576 619L727 146Q869 580 869 600Q869 605 863 612T839 627T794 637H783V683H792Z"></path>
<path stroke-width="1" id="E1-MJMAIN-3D" d="M56 347Q56 360 70 367H707Q722 359 722 347Q722 336 708 328L390 327H72Q56 332 56 347ZM56 153Q56 168 72 173H708Q722 163 722 153Q722 140 707 133H70Q56 140 56 153Z"></path>
<path stroke-width="1" id="E1-MJMAIN-56" d="M114 620Q113 621 110 624T107 627T103 630T98 632T91 634T80 635T67 636T48 637H19V683H28Q46 680 152 680Q273 680 294 683H305V637H284Q223 634 223 620Q223 618 313 372T404 126L490 358Q575 588 575 597Q575 616 554 626T508 637H503V683H512Q527 680 627 680Q718 680 724 683H730V637H723Q648 637 627 596Q627 595 515 291T401 -14Q396 -22 382 -22H374H367Q353 -22 348 -14Q346 -12 231 303Q114 617 114 620Z"></path>
<path stroke-width="1" id="E1-MJMAIN-22C5" d="M78 250Q78 274 95 292T138 310Q162 310 180 294T199 251Q199 226 182 208T139 190T96 207T78 250Z"></path>
<path stroke-width="1" id="E1-MJMAIN-41" d="M255 0Q240 3 140 3Q48 3 39 0H32V46H47Q119 49 139 88Q140 91 192 245T295 553T348 708Q351 716 366 716H376Q396 715 400 709Q402 707 508 390L617 67Q624 54 636 51T687 46H717V0H708Q699 3 581 3Q458 3 437 0H427V46H440Q510 46 510 64Q510 66 486 138L462 209H229L209 150Q189 91 189 85Q189 72 209 59T259 46H264V0H255ZM447 255L345 557L244 256Q244 255 345 255H447Z"></path>
</defs>
<g stroke="currentColor" fill="currentColor" stroke-width="0" transform="matrix(1 0 0 -1 0 0)" aria-hidden="true">
<use xlink:href="#E1-MJMAIN-31" x="0" y="0"></use>
<use xlink:href="#E1-MJMAIN-57" x="750" y="0"></use>
<use xlink:href="#E1-MJMAIN-3D" x="2056" y="0"></use>
<use xlink:href="#E1-MJMAIN-31" x="3113" y="0"></use>
<use xlink:href="#E1-MJMAIN-56" x="3863" y="0"></use>
<use xlink:href="#E1-MJMAIN-22C5" x="4836" y="0"></use>
<use xlink:href="#E1-MJMAIN-31" x="5337" y="0"></use>
<use xlink:href="#E1-MJMAIN-41" x="6087" y="0"></use>
</g>
</svg>
\ No newline at end of file
<svg xmlns:xlink="http://www.w3.org/1999/xlink" width="22.571ex" height="5.843ex" style="vertical-align: -2.005ex;" viewBox="0 -1652.5 9717.9 2515.6" role="img" focusable="false" xmlns="http://www.w3.org/2000/svg" aria-labelledby="MathJax-SVG-1-Title">
<title id="MathJax-SVG-1-Title">{\displaystyle \mathrm {1~W=1~{\frac {V^{2}}{\Omega }}=1~A^{2}{\cdot }\Omega } }</title>
<defs aria-hidden="true">
<path stroke-width="1" id="E1-MJMAIN-31" d="M213 578L200 573Q186 568 160 563T102 556H83V602H102Q149 604 189 617T245 641T273 663Q275 666 285 666Q294 666 302 660V361L303 61Q310 54 315 52T339 48T401 46H427V0H416Q395 3 257 3Q121 3 100 0H88V46H114Q136 46 152 46T177 47T193 50T201 52T207 57T213 61V578Z"></path>
<path stroke-width="1" id="E1-MJMAIN-57" d="M792 683Q810 680 914 680Q991 680 1003 683H1009V637H996Q931 633 915 598Q912 591 863 438T766 135T716 -17Q711 -22 694 -22Q676 -22 673 -15Q671 -13 593 231L514 477L435 234Q416 174 391 92T358 -6T341 -22H331Q314 -21 310 -15Q309 -14 208 302T104 622Q98 632 87 633Q73 637 35 637H18V683H27Q69 681 154 681Q164 681 181 681T216 681T249 682T276 683H287H298V637H285Q213 637 213 620Q213 616 289 381L364 144L427 339Q490 535 492 546Q487 560 482 578T475 602T468 618T461 628T449 633T433 636T408 637H380V683H388Q397 680 508 680Q629 680 650 683H660V637H647Q576 637 576 619L727 146Q869 580 869 600Q869 605 863 612T839 627T794 637H783V683H792Z"></path>
<path stroke-width="1" id="E1-MJMAIN-3D" d="M56 347Q56 360 70 367H707Q722 359 722 347Q722 336 708 328L390 327H72Q56 332 56 347ZM56 153Q56 168 72 173H708Q722 163 722 153Q722 140 707 133H70Q56 140 56 153Z"></path>
<path stroke-width="1" id="E1-MJMAIN-56" d="M114 620Q113 621 110 624T107 627T103 630T98 632T91 634T80 635T67 636T48 637H19V683H28Q46 680 152 680Q273 680 294 683H305V637H284Q223 634 223 620Q223 618 313 372T404 126L490 358Q575 588 575 597Q575 616 554 626T508 637H503V683H512Q527 680 627 680Q718 680 724 683H730V637H723Q648 637 627 596Q627 595 515 291T401 -14Q396 -22 382 -22H374H367Q353 -22 348 -14Q346 -12 231 303Q114 617 114 620Z"></path>
<path stroke-width="1" id="E1-MJMAIN-32" d="M109 429Q82 429 66 447T50 491Q50 562 103 614T235 666Q326 666 387 610T449 465Q449 422 429 383T381 315T301 241Q265 210 201 149L142 93L218 92Q375 92 385 97Q392 99 409 186V189H449V186Q448 183 436 95T421 3V0H50V19V31Q50 38 56 46T86 81Q115 113 136 137Q145 147 170 174T204 211T233 244T261 278T284 308T305 340T320 369T333 401T340 431T343 464Q343 527 309 573T212 619Q179 619 154 602T119 569T109 550Q109 549 114 549Q132 549 151 535T170 489Q170 464 154 447T109 429Z"></path>
<path stroke-width="1" id="E1-MJMAIN-3A9" d="M55 454Q55 503 75 546T127 617T197 665T272 695T337 704H352Q396 704 404 703Q527 687 596 615T666 454Q666 392 635 330T559 200T499 83V80H543Q589 81 600 83T617 93Q622 102 629 135T636 172L637 177H677V175L660 89Q645 3 644 2V0H552H488Q461 0 456 3T451 20Q451 89 499 235T548 455Q548 512 530 555T483 622T424 656T361 668Q332 668 303 658T243 626T193 560T174 456Q174 380 222 233T270 20Q270 7 263 0H77V2Q76 3 61 89L44 175V177H84L85 172Q85 171 88 155T96 119T104 93Q109 86 120 84T178 80H222V83Q206 132 162 199T87 329T55 454Z"></path>
<path stroke-width="1" id="E1-MJMAIN-41" d="M255 0Q240 3 140 3Q48 3 39 0H32V46H47Q119 49 139 88Q140 91 192 245T295 553T348 708Q351 716 366 716H376Q396 715 400 709Q402 707 508 390L617 67Q624 54 636 51T687 46H717V0H708Q699 3 581 3Q458 3 437 0H427V46H440Q510 46 510 64Q510 66 486 138L462 209H229L209 150Q189 91 189 85Q189 72 209 59T259 46H264V0H255ZM447 255L345 557L244 256Q244 255 345 255H447Z"></path>
<path stroke-width="1" id="E1-MJMAIN-22C5" d="M78 250Q78 274 95 292T138 310Q162 310 180 294T199 251Q199 226 182 208T139 190T96 207T78 250Z"></path>
</defs>
<g stroke="currentColor" fill="currentColor" stroke-width="0" transform="matrix(1 0 0 -1 0 0)" aria-hidden="true">
<use xlink:href="#E1-MJMAIN-31" x="0" y="0"></use>
<use xlink:href="#E1-MJMAIN-57" x="750" y="0"></use>
<use xlink:href="#E1-MJMAIN-3D" x="2056" y="0"></use>
<use xlink:href="#E1-MJMAIN-31" x="3113" y="0"></use>
<g transform="translate(3863,0)">
<g transform="translate(120,0)">
<rect stroke="none" width="1324" height="60" x="0" y="220"></rect>
<g transform="translate(60,676)">
<use xlink:href="#E1-MJMAIN-56" x="0" y="0"></use>
<use transform="scale(0.707)" xlink:href="#E1-MJMAIN-32" x="1061" y="513"></use>
</g>
<use xlink:href="#E1-MJMAIN-3A9" x="300" y="-726"></use>
</g>
</g>
<use xlink:href="#E1-MJMAIN-3D" x="5705" y="0"></use>
<use xlink:href="#E1-MJMAIN-31" x="6762" y="0"></use>
<g transform="translate(7512,0)">
<use xlink:href="#E1-MJMAIN-41" x="0" y="0"></use>
<use transform="scale(0.707)" xlink:href="#E1-MJMAIN-32" x="1061" y="583"></use>
</g>
<use xlink:href="#E1-MJMAIN-22C5" x="8716" y="0"></use>
<use xlink:href="#E1-MJMAIN-3A9" x="8995" y="0"></use>
</g>
</svg>
\ 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