Commit 2fe1a1a7 by Lukasz Surazynski

typos

parent a35f19bb
Pipeline #109280 passed with stage
in 39 seconds
......@@ -45,7 +45,7 @@
<p>Currently I'm a researcher on University of Oulu. I working in two units: Medical Imaging, Physics and Technology
& Optoelectronics and Measurements Techniques Laboratory.</p>
&#38; Optoelectronics and Measurements Techniques Laboratory.</p>
<p>I happily and successfully obtained two Master Degrees. First one in Optoelectronics (Poland) and second in Biomedical Engineering (Finland). My research is mostly focused on Spectroscopy in biological samples but I won't refuse projects including any engineering skills. There are various light sources working in the lab, which were created with my hands. </p>
......@@ -60,7 +60,7 @@
<li>Find me in person in OPEM/MIPT</li>
</ul>
<h1> FabAcademy Agreement:</h1>
<h1> Fab Academy Agreement:</h1>
<h2>I am a Fab Academy student, responsible for: </h2>
......
......@@ -55,13 +55,13 @@
</ul>
</div>
<div id="content">
<h1>Week 2: Personal webpage</h1>
<h1>Week 2: Personal web page</h1>
<p><i>I believe no-one should start anything from complaining. For this reason I will say that your teaching assistants are able to fix anything! I had slight problem with access to GitLab. Fortunatelly and finally I was granted access and here we go. </i></p>
<p>FabAcademy requires a place, where my personal development may be visualized. It may be understood as interface.
Very handy way is to create personal webpage, such as this one. </p>
<p><i>I believe no-one should start anything from complaining. For this reason I will say that your teaching assistants are able to fix anything! I had slight problem with access to GitLab. Fortunately and finally I was granted access and here we go. </i></p>
<p>Fab Academy requires a place, where my personal development may be visualized. It may be understood as interface.
Very handy way is to create personal web page, such as this one. </p>
<p>First of all some skills in HTML coding (as some people do not hesitate to call it programming are required. We have been granted access to already prepared template. However, I did not liked it. I decided to use some other template, as those are easily accessible and license is freeware. You may notice copyrights at the bottom of every webpage.</p>
<p>First of all some skills in HTML coding (as some people do not hesitate to call it programming are required. We have been granted access to already prepared template. However, I did not liked it. I decided to use some other template, as those are easily accessible and license is Freeware. You may notice copyrights at the bottom of every web page.</p>
<p>You may be interested in couple links, where one I used is in <b>bold</b>: </p>
......@@ -75,7 +75,7 @@
<h2>HTML5</h2>
<p>I had a bit of knowledge in this matter before. I already had to design couple webpages. Because of this fact I decided to use free templates with already created .CSS files. HTML is fairly easy. You are using brackets just like in <q>TEX languages</q>. Google is very helpful in this, as you may find <b>almost everything</b>. Couple examples how to use HTML5 are shown below. </p>
<p>I had a bit of knowledge in this matter before. I already had to design couple web pages. Because of this fact I decided to use free templates with already created .CSS files. HTML is fairly easy. You are using brackets just like in <q>TEX languages</q>. Google is very helpful in this, as you may find <b>almost everything</b>. Couple examples how to use HTML5 are shown below. </p>
<p><code>Attaching images: &lt;img src="example.png" /&gt; <br>
Writing in bold: &lt;b&gt;TEXT&lt;b/&gt; <br>
......@@ -90,8 +90,8 @@
<ul>
<li>Play with CSS to change background graphics</li>
<li>Edit webpage templates and rearrange tables, remove unwanted parts</li>
<li>Edit CSS filest to create highlighting of menu on the right side</li>
<li>Edit web page templates and rearrange tables, remove unwanted parts</li>
<li>Edit CSS file to create highlighting of menu on the right side</li>
<li>Define couple elements such as tables (in CSS)</li>
</ul>
......@@ -103,7 +103,7 @@
</p>
<h2>Framework - Brackets</h2>
<p>Before the FabAcademy I was writing every webpage in Notepad++. It is pretty awsome dev tool as it works with a lot of programming languages. Furthermore it is able to open a lof of different file extensions. However, I decided I will learn someting new and I started my experience with Brackets. So far I could recommend this even for newcommers. It is fairly simple and still works well. It color your code to help you finding mistakes and code with more pleasure. It is also automatically filling the missing brackets or finising them. Feature, which is not available in Notepad++. Below little comparison of those two programs.</p>
<p>Before the Fab Academy I was writing every web page in Notepad++. It is pretty awesome developer tool as it works with a lot of programming languages. Furthermore it is able to open a lot of different file extensions. However, I decided I will learn something new and I started my experience with Brackets. So far I could recommend this even for newcomers. It is fairly simple and still works well. It color your code to help you finding mistakes and code with more pleasure. It is also automatically filling the missing brackets or finishing them. Feature, which is not available in Notepad++. Below little comparison of those two programs.</p>
<img src="style/A1/notepad.jpg" width="500" class="center"><caption><center>Screenshot of this website using Notepad++</center></caption><br>
......@@ -111,7 +111,7 @@
<h2>GIT - or how to 'push' your files onto the server</h2>
<p>Git is a version control system. Gitlab provides remote storage of repositories. In addition, it provides deployment service to host websites. The sites content has to be stored in a GIT repository before it is deployed. Pushing synchronizes your local repo with the remote repo. If you have proper configuration files in gitlab (.yml file) when you push content to the repo it will deploy the site.</p>
<p>Git is a version control system. Gitlab provides remote storage of repositories. In addition, it provides deployment service to host websites. The sites content has to be stored in a GIT repository before it is deployed. Pushing synchronizes your local repo with the remote repo. If you have proper configuration files in gitlab (.yml file) when you push content to the repository it will deploy the site.</p>
<p>The best/most efficient way to use GIT is a console, where you define, what would you like to do. List of must-know parameters, when you are setting up your git is shown below.<br><br></p>
......@@ -130,7 +130,7 @@
<li> <a href="https://help.github.com/en/enterprise/2.16/user/articles/adding-a-new-ssh-key-to-your-github-account">Adding key to repository</a></li>
</ul>
<img src="style/A1/ssh.png" width="500" class="center"><caption><center>Part of Helpdesk webpage</center></caption><br>
<img src="style/A1/ssh.png" width="500" class="center"><caption><center>Part of Help desk web page</center></caption><br>
<p>After everything is secured and you have everything working it is time to upload repository. This is procedure to upload your files. An example procedure:<br><br>
......@@ -148,14 +148,14 @@
<h2>Maintenance</h2>
<p>We can also calling it updating your webpages. GIT is also used or responsible for that part. With it you should remove <b>(git pull)</b> and again <b>(git push)</b> your updated files. Most likely you would like to check <b>(git status)</b> from time to time. Despite of updates you may, e.g. copy files with <b>(git clone)</b>. Other valuable formulas and their explanation may be found there : <a href="https://git-scm.com/about">GIT Documentation</a> Structure of my webpage might be descibed with tree chart. I'm trying to keep it clean and simple.</p>
<p>We can also calling it updating your web pages. GIT is also used or responsible for that part. With it you should remove <b>(git pull)</b> and again <b>(git push)</b> your updated files. Most likely you would like to check <b>(git status)</b> from time to time. Despite of updates you may, e.g. copy files with <b>(git clone)</b>. Other valuable formulas and their explanation may be found there : <a href="https://git-scm.com/about">GIT Documentation</a> Structure of my web page might be described with tree chart. I'm trying to keep it clean and simple.</p>
<img src="style/A1/structure.JPG" width="500" class="center"><caption><center>Graph visualizing structure of my files</center></caption><br>
<h2>Troubleshooting</h2>
<p>I fortunately did not have this problem as one of the teaching assistants told me about this issue. Nevertheless, <code>.gitlab.ci.yml</code>, Gitlab Continous Integration configuration file was outdated. This file role is simple - it is taking the content of your remote master branch and deploys it in a Web Server (nginx). It has to be replaced/updated by performing given steps. In order to fix it you should create new file in your repo folder. Below, visualization how new and corrected file should look-like.</p>
<p>I fortunately did not have this problem as one of the teaching assistants told me about this issue. Nevertheless, <code>.gitlab.ci.yml</code>, Gitlab Continuous Integration configuration file was outdated. This file role is simple - it is taking the content of your remote master branch and deploys it in a Web Server (nginx). It has to be replaced/updated by performing given steps. In order to fix it you should create new file in your repository folder. Below, visualization how new and corrected file should look-like.</p>
<img src="style/A1/htmlcreation.PNG" width="500" class="center"><caption><center>Screenshot, taken during replacement process</center></caption><br>
</div>
......
......@@ -95,7 +95,7 @@
<img src="style/A10/Group/PhLED3.jpg" width="300" height="200" class="center">
<br><caption><center>Light treatment of our photoresistor circuit</center></caption><br>
<p>As said before our plan was to use ATTiny. Using Arduino IDE, we create a code, which was turning LED on every time photoresistor was lacking light. Our previously designed board didn't have pinheaders to connect with output boards, because of that we simply soldered signal line to unused port.</p>
<p>As said before our plan was to use ATTiny. Using Arduino IDE, we create a code, which was turning LED on every time photoresistor was lacking light. Our previously designed board didn't have pinheads to connect with output boards, because of that we simply soldered signal line to unused port.</p>
<img src="style/A10/Group/PhLED4.jpg" width="500" class="center"><caption><center>Barbaric but handy</center></caption><br>
......@@ -186,7 +186,7 @@
<p>Circuit is very similar the only difference is that I failed this time. Thermistor resistance in ambient temperature is also 10 kOhms. The hotter it gets lower the resistance. However, the change is not that significant as with photoresistor. I was dead sure it is enough to use voltage divider circuit. Unfortunately, when using decent 50 kOhm resistor voltage drop is equal to 100 mV. It is not enough. I learned my lesson. Next time I will use bridge circuit. I already know values of components. </p>
<p>I could calculate value of bridge components by myself but <u>WHY?</u>. I simply used <a href="https://www.electro-tech-online.com/tools/thermistor-resistance-calculator.php">This online calculator</a>. Bridge schematic is more precise and reliable and this circuit will be part of my final project. My values used for calculation were: </p>
<p>I could calculate value of bridge components by myself but <u>WHY?</u>. I simply used <a href="https://www.electro-tech-online.com/tools/thermistor-resistance-calculator.php">This on-line calculator</a>. Bridge schematic is more precise and reliable and this circuit will be part of my final project. My values used for calculation were: </p>
<ul>
<li>Beta value: 375 (taken from datasheet)</li>
......
......@@ -69,7 +69,7 @@
<h3>Green LED</h3>
<p>There are no more obvious choice as Light emitting diodes. Results are visible with naked eye and connection is very simple. We have found some random green LED on burned board. Our decision was to measure forward voltage to current characteristics. From this power might be easily calculated as Power = Voltage x Current. <i>This is knowledge taken from acient scrolls and <b>>>>PUIMURI<<<<</b></i></p>
<p>There are no more obvious choice as Light emitting diodes. Results are visible with naked eye and connection is very simple. We have found some random green LED on burned board. Our decision was to measure forward voltage to current characteristics. From this power might be easily calculated as Power = Voltage x Current. <i>This is knowledge taken from ancient scrolls: <b><a href="assignment6.html"> >>PUIMURI<< </a> </b></i></p>
<img src="style/A11/Group/IMG_20190404_150549.jpg" width="500" class="center"><caption><center>Our power supply - most crucial part of the setup</center></caption><br>
......@@ -154,7 +154,7 @@
<h3>Programming and testing</h3>
<p>For programming purposes I used Arduino IDE. It required adding my ATMega to the boards. Tutorial how to make it might be found on: <a href="https://github.com/carlosefr/atmega">this website</a>. Then I needed a pinmap. Fortunately, it just require a bit of googling, map looks exactly like that:</p>
<p>For programming purposes I used Arduino IDE. It required adding my ATMega to the boards. Tutorial how to make it might be found on: <a href="https://github.com/carlosefr/atmega">this website</a>. Then I needed a pinmap. Fortunately, it just require a bit of goggling, map looks exactly like that:</p>
<img src="style/A11/Ind/atmega328-tqfp-arduino-pinout.jpg" width="500" class="center"><caption><center>Pinmap</center></caption><br>
......@@ -163,7 +163,7 @@
<img src="style/A11/Ind/code.png" width="500" class="center"><caption><center>Arduino Code</center></caption><br>
<p>With map and correct board in board manager I was able to blink my test LED. I was really happy that I added it. Simplest way to make sanity check. My board was ready. I soldered wires to the LCD screen and corresponding pins on my board. <i>In future I think I will use SMD pinheaders, this will be more elegant and efficient way.</i> After powering everything up LCD screen lighted up. That was a good sign.</p>
<p>With map and correct board in board manager I was able to blink my test LED. I was really happy that I added it. Simplest way to make sanity check. My board was ready. I soldered wires to the LCD screen and corresponding pins on my board. <i>In future I think I will use SMD pinheads, this will be more elegant and efficient way.</i> After powering everything up LCD screen lighted up. That was a good sign.</p>
<p>However, after programming screen remained unchanged. <b>After several minutes of checking the connections I realized that R/W pin is "hanging", where it should be grounded (only write mode).</b> After fixing this issue my screen woke up and started to work!</p>
......@@ -179,7 +179,7 @@
<h3>Troubleshooting</h3>
<p>There was one accident that happened during the process. It stole a bit of my life. I bricked my AVR. Not intentionally, obviously. During burning bootloader I set something incorrectly and rewrote fuses. Unfortunately, those were changed in a way that ATMega got "bricked". It didn't respond on anything, Avrdude was simply telling me that all fuses are blank (a lot of FFFFFFFFFFF). As I was really not eager to resolder everything I was googling for as long as needed. I reprogrammed clock fuses in a way that it required 5V Peak-to-peak voltage with 1 MHz frequency (clock was still divided by 8). It was solved by combining:</p>
<p>There was one accident that happened during the process. It stole a bit of my life. I bricked my AVR. Not intentionally, obviously. During burning bootloader I set something incorrectly and rewrote fuses. Unfortunately, those were changed in a way that ATMega got "bricked". It didn't respond on anything, Avrdude was simply telling me that all fuses are blank (a lot of FFFFFFFFFFF). As I was really not eager to re-solder everything I was goggling for as long as needed. I reprogrammed clock fuses in a way that it required 5V Peak-to-peak voltage with 1 MHz frequency (clock was still divided by 8). It was solved by combining:</p>
<ul>
<li><a href="https://www.avrfreaks.net/forum/tutsoft-recovering-locked-out-avr">Forum</a></li>
......@@ -191,7 +191,7 @@
<h3>Conclusions</h3>
<p>There is couple things, which might be repaired or improved. First of all there is lack of ground for R/W pin. I have to fix connections between LCD screen and Motherboard. I could make the board a bit smaller and provide power for peripheral circuits (based on MOS transistors) or add powering points. I should fix this Reset line, vias are uncessesary. I should keep as low amount of drills as possible. Maybe add one more coupling capacitor. Amen.</p>
<p>There is couple things, which might be repaired or improved. First of all there is lack of ground for R/W pin. I have to fix connections between LCD screen and Motherboard. I could make the board a bit smaller and provide power for peripheral circuits (based on MOS transistors) or add powering points. I should fix this Reset line, couple vias are unnecessary. I should keep as low amount of drills as possible. Maybe add one more coupling capacitor. Amen.</p>
<h3>Files:</h3>
<a href="style/A11/LCD.zip" download="Arduino LCD code">Download: LCD</a><br>
......
......@@ -110,7 +110,7 @@
<li><h4>How much will they cost?</h4></li>
<p>At this point I estimate that total cost should not exceed 50 euro. However, I will create more detailed budget after I will succeed with final project. It will be included on some final project related webpages. <i>I do not include pricing of my sweat and blood as those are priceless.</i></p>
<p>At this point I estimate that total cost should not exceed 50 euro. However, I will create more detailed budget after I will succeed with final project. It will be included on some final project related web pages. <i>I do not include pricing of my sweat and blood as those are priceless.</i></p>
<li><h4>What parts and systems will be made?</h4></li>
......
......@@ -61,7 +61,7 @@
<p>As introduction I will use <i>old, good auntie Wikipedia</i>: In telecommunication and data transmission, serial communication is the process of sending data one bit at a time, sequentially, over a communication channel or computer bus. This is in contrast to parallel communication, where several bits are sent as a whole, on a link with several parallel channels. </p>
<p>There are quite many others way to make devices "talking", <b>Bluetooth, Zigbee, Wi-fi, I2C, IRDA</b> are other standards worthy to mention. I think I'm mentioning those just to show some respect to other solutions.</p>
<p>There are quite many others way to make devices "talking", <b>Bluetooth, Zigbee, Wi-Fi, I2C, IRDA</b> are other standards worthy to mention. I think I'm mentioning those just to show some respect to other solutions.</p>
<img src="https://static.seekingalpha.com/uploads/2013/11/22/1128818-13851661054383607-Jacob-Steinberg_origin.jpg" width="500" class="center"><caption><center>Networking and communications by Nokia</center></caption><br>
......@@ -71,7 +71,7 @@
<h3>Team: Handful of people</h3>
<p>Four boards were used as separate nodes. Those were connected using serial port, where Jobin's Node (number1) was used as Master/Receiver. There was Bluetooth mode attached to it. The code may be found on Jobin's page: <a href="http://fab.academany.org/2019/labs/oulu/students/jobin-varghese/assignments/week14/">CLICK</a>. There were plenty of people with their boards, couple <b>the chosen ones</b> connected. We named the nodes as Jobin_Node1, Sahan_Node2, Mikael_ Node3 and Yasir_Node4. All the boards we programmed and connected in series, and controlled through Bluetooth application.</p>
<p>Four boards were used as separate nodes. Those were connected using serial port, where Jobin's Node (number 1) was used as Master/Receiver. There was Bluetooth mode attached to it. The code may be found on Jobin's page: <a href="http://fab.academany.org/2019/labs/oulu/students/jobin-varghese/assignments/week14/">CLICK</a>. There were plenty of people with their boards, couple <b>the chosen ones</b> connected. We named the nodes as Jobin_Node1, Sahan_Node2, Mikael_ Node3 and Yasir_Node4. All the boards we programmed and connected in series, and controlled through Bluetooth application.</p>
<p>Target was to blink the LEDs on the boards when a button on the Bluetooth mobile application (Bluetooth Control Lamp) is pressed. The LED on each board lit up when the number corresponding to the number assigned to the node was pressed. Finally, the code was modified so that all the LEDs turned on and off at the same time.</p>
......@@ -88,9 +88,9 @@
<h2>Individual Assignment</h2>
<h3>Concept</h3>
<p>Let's move on. Instructions for this week are: <i>design, build and connect wired or wireless node(s) with network or bus addresses</i>. My way is to use previously made boards, namely <a href="assignment6.html">Helloworld.pcb</a> and <a href="assignment7.html">TARSMotherboard.pcb</a> and connect them using serial interface. As I tested before that two boards are working well, there shouldn't be any problems. <i>but there were just one, so please check Troubleshooting section in the end of this webpage</i>. After one little issue was solved, there were no problems.</p>
<p>Let's move on. Instructions for this week are: <i>design, build and connect wired or wireless node(s) with network or bus addresses</i>. My way is to use previously made boards, namely <a href="assignment6.html">Helloworld.pcb</a> and <a href="assignment7.html">TARSMotherboard.pcb</a> and connect them using serial interface. As I tested before that two boards are working well, there shouldn't be any problems. <i>but there were just one, so please check Troubleshooting section in the end of this web page</i>. After one little issue was solved, there were no problems.</p>
<p>In general serial tranmission requires just two wires/connections. TxD and RxD are marked in every single microcontroller's datasheets. <i>Especially those, which has this serial transmission feature.</i>. In my case I will use FTDI cable to create USB to Serial translation. PC/Laptop is Master and it is used to call two nodes based on ATTiny44 and ATMega328p. Node1 (ATTiny) is connected to photoresistor and thermistor, which were designed in <a href="assignment10.html">Input devices</a> week. On the other hand Node2 (ATMega328p) is connected with LCD screen, which was designed in <a href="assignment10.html">Input devices</a> week. It means I used both Input and Output devices and read/write values using serial communication. Idea of connection is presented below.</p>
<p>In general serial transmission requires just two wires/connections. TxD and RxD are marked in every single microcontroller's datasheets. <i>Especially those, which has this serial transmission feature.</i>. In my case I will use FTDI cable to create USB to Serial translation. PC/Laptop is Master and it is used to call two nodes based on ATTiny44 and ATMega328p. Node1 (ATTiny) is connected to photoresistor and thermistor, which were designed in <a href="assignment10.html">Input devices</a> week. On the other hand Node2 (ATMega328p) is connected with LCD screen, which was designed in <a href="assignment10.html">Input devices</a> week. It means I used both Input and Output devices and read/write values using serial communication. Idea of connection is presented below.</p>
<img src="style/A13/Individual/Diagram.png" width="500" class="center"><caption><center>This is simplified version of connections</center></caption><br>
......@@ -139,7 +139,7 @@
<img src="style/A13/Individual/1Overall.jpg" width="500" class="center"><caption><center>Connections between all boards</center></caption><br>
<p>This is not end of surprises. I managed to record video of my setup. There are all features visible. Moreover, there is answer on the call presented. Firstly Node2 is answering by prolonged blinking. Then Node 1 is performing same operation. Nevertheless, it is a bit shorted than with previous node. <i>In the beginning both of them are blinking as a sign of receiving serial tranmission.</i></p>
<p>This is not end of surprises. I managed to record video of my setup. There are all features visible. Moreover, there is answer on the call presented. Firstly Node 2 is answering by prolonged blinking. Then Node 1 is performing same operation. Nevertheless, it is a bit shorted than with previous node. <i>In the beginning both of them are blinking as a sign of receiving serial transmission.</i></p>
<video width="600" height="480" class="center" controls>
<source src="style/A13/Individual/VOD.mp4" type="video/mp4">
......
......@@ -72,7 +72,7 @@
<h2>Group Assignment</h2>
<h3>Members: Arash, Gleb, Marjo, Perttu and me</h3>
<p>This is unusual week. This time our group work may be find under this link: <a href="http://fabacademy.org/2019/labs/oulu/machine_projects/Team2/">CLICK ON ME!</a>. On my webpage I will only describe my personal contribution.</p>
<p>This is unusual week. This time our group work may be find under this link: <a href="http://fabacademy.org/2019/labs/oulu/machine_projects/Team2/">CLICK ON ME!</a>. On my web page I will only describe my personal contribution.</p>
<h2>Individual Assignment</h2>
<h3>My contribution</h3>
......
......@@ -85,7 +85,7 @@
<p><code>line(15, 25, 70, 90);</code></p>
<img src="style/A15/Group/2.jpg" width="500" class="center"><caption><center>Simple result, pltting a line</center></caption><br>
<img src="style/A15/Group/2.jpg" width="500" class="center"><caption><center>Simple result, plotting a line</center></caption><br>
<h4>Blynk</h4>
......@@ -104,7 +104,7 @@
<p>The Blynk platform includes the following components: </p>
<ul>
<li>Blynk app builder: Allows to you build apps for your projects using various widgets. It is available for Android and iOS platforms. </li>
<li>Blynk app builder: Allows to you build applications for your projects using various widgets. It is available for Android and iOS platforms. </li>
<li>Blynk server: Responsible for all the communications between your mobile device that's running the Blynk app and the hardware. You can use the Blynk Cloud or run your private Blynk server locally. It's open source, could easily handle thousands of devices, and can even be launched on a Raspberry Pi. </li>
<li>Blynk libraries: Enables communication with the server and processes all the incoming and outcoming commands from your Blynk app and the hardware. They are available for all the popular hardware platforms. </li>
</ul>
......@@ -136,7 +136,7 @@
<h4>Python</h4>
<p>Python is an interpreted, high-level, general-purpose programming language used for developing both desktop and web applications. Python is also used for developing complex scientific and numeric applications and its design philosophy emphasises code readability with its notable use of significant whitespace. </p>
<p>Python is an interpreted, high-level, general-purpose programming language used for developing both desktop and web applications. Python is also used for developing complex scientific and numeric applications and its design philosophy emphasizes code readability with its notable use of significant whitespace. </p>
<p>A simple program for addition and calculating savings in Python is presented below : </p>
......@@ -165,7 +165,7 @@
<h2>Individual Assignment</h2>
<p>It is time to write an application that interfaces an user with an input and/or output device that I made. As I haven't find anyone in our group, who tried to do it in Matlab and I'm working daily with Matlab I decided to use this particular environment. For interface purposes I used two already fabricated boards: <a href="assignment6.html">ATTiny "Helloworld"</a> and <a href="assignment10.html">Photo transistor from Input Devices Week</a>.</p>
<p>It is time to write an application that interfaces an user with an input and/or output device that I made. As I haven't find anyone in our group, who tried to do it in Matlab and I'm working daily with Matlab I decided to use this particular environment. For interface purposes I used two already fabricated boards: <a href="assignment6.html">ATTiny "Hello world"</a> and <a href="assignment10.html">Photo transistor from Input Devices Week</a>.</p>
<p>First board will be used as Serial Interface (bridge between computer and sensor board) and second board is just detector. ATTiny44 will be enable serial communication, as this was microcontroller, which I had on the "Hello world" board. I was forced to use two different boards as there were no real detector (and I really wanted to detect something using Matlab) on ATTiny44 board. Those will be connected with temporary soldered wires. </p>
......@@ -190,17 +190,17 @@
fprintf() - sending a value over serial port<br>
pause() - work same as delay() function in C/Arduino IDE<br>
fscanf() - reading value over serial port<br>
delete(instrfindall) - <b>very handy function, ensures that ports were closed or resetted if needed</b></code></p>
delete(instrfindall) - <b>very handy function, ensures that ports were closed or reseted if needed</b></code></p>
<img src="style/A15/Individual/2Matlab.JPG" width="500" class="center"><caption><center>Command Line Interface, the code</center></caption><br>
<p><i>Sidenote: It is important to wait a bit after creating connection using Serial port. In the bottom Matlab informs about its status. It is required to wait until <b>BUSY</b> indicator will disappear.</i></p>
<p><i>Side note: It is important to wait a bit after creating connection using Serial port. In the bottom Matlab informs about its status. It is required to wait until <b>BUSY</b> indicator will disappear.</i></p>
<img src="style/A15/Individual/3Matlab.JPG" width="500" class="center"><caption><center>Busy indicator</center></caption><br>
<p>After compling such code, so-caled "Command Window" will be used as Interface. Below example is was already my testing. There were three options featured already in Arduino IDE but I also added a way to disconnect and stop communication by pressing "0".</p>
<p>After compiling such code, so-called "Command Window" will be used as Interface. Below example is was already my testing. There were three options featured already in Arduino IDE but I also added a way to disconnect and stop communication by pressing "0".</p>
<img src="style/A15/Individual/4Matlab.JPG" width="500" class="center"><caption><center>Simple result, pltting a line</center></caption><br>
<img src="style/A15/Individual/4Matlab.JPG" width="500" class="center"><caption><center>Simple result, plotting a line</center></caption><br>
<p>If image is worth 1 000 words then movie is worth much more. Below there is movie, how the Interface works and how to operate it. I don't feel that any user would need a description how to use it.</p><br>
......@@ -220,7 +220,7 @@
<p>After that a little window will pop-up. It is possible to add different kind of boxes. The most important boxes for me were <b>Push button</b> and <b>Static Text box</b>. First is used to allow user to turn LED ON/OFF and read data from phototransistor. Second type of boxes is used just to visualize things, e.g. variables or text. <i>Very handy if you are expecting some interactions.</i></p>
<p>There are plenty of options opening, when double clicked on background or boxes. There are fonts, colors, sizes, allignments, names, visibilities accessible. Just after saving by <b>Save button</b>, which may be find in Menu tab or combination of <b>CTRL+S</b> Matlab code is generated. Every button is separate function. </p>
<p>There are plenty of options opening, when double clicked on background or boxes. There are fonts, colors, sizes, alignments, names, visibilities accessible. Just after saving by <b>Save button</b>, which may be find in Menu tab or combination of <b>CTRL+S</b> Matlab code is generated. Every button is separate function. </p>
<img src="style/A15/Individual/Guide2.png" width="500" class="center"><caption><center>Simple result, plotting a line</center></caption><br>
......@@ -234,7 +234,7 @@
<img src="style/A15/Individual/Guide5.JPG" width="500" class="center"><caption><center>My GUI</center></caption><br>
<p>Principle of operation is fairly easy. <i>Sidenote: once again it is required to wait until <b>BUSY</b> indicator will go off. It means serial transmission was created successfully. </i></p>
<p>Principle of operation is fairly easy. <i>Side note: once again it is required to wait until <b>BUSY</b> indicator will go off. It means serial transmission was created successfully. </i></p>
<img src="style/A15/Individual/Matlab3.JPG" width="500" class="center"><caption><center>It works!</center></caption><br>
......@@ -248,7 +248,7 @@
<h3>Troubleshooting</h3>
<p>Difficulties in this assigment are mostly connected with programming language. I didn't have any issues by using command line (as I'm using it daily) but challenging part was GUI. It is very important to insert code inside callback functions. Each created button has its own place in a code. It was very easy during testing to start typing in wrong place and ruin everything. Fortunately, <b>CTRL Z</b> is working nicely in <i>MatLab</i>. </p>
<p>Difficulties in this assignment are mostly connected with programming language. I didn't have any issues by using command line (as I'm using it daily) but challenging part was GUI. It is very important to insert code inside callback functions. Each created button has its own place in a code. It was very easy during testing to start typing in wrong place and ruin everything. Fortunately, <b>CTRL Z</b> is working nicely in <i>MatLab</i>. </p>
<h3>Files:</h3>
......
......@@ -78,7 +78,7 @@
<h3>My contribution</h3>
<p>As it was stated before programming environment was <b>Arduino IDE</b> as our microcontroller board is Arduino UNO. It had two big advantages, libraries for both servo and stepper motor. Among variables there were two buttons used, one to start making a drink and other one as a sensor. I will describe second one a bit later. Our stepper motor driver required at least two pins: <i>stePin</i> in order to start movement and <i>dirPin</i>, which was responsible for direction of movement (clockwise or counter-clockwise). In our case it controlled movement of the cup (left/right). During testing with laboratory power supply I observed that when idle stepper motor draws quite a bit current. I decided we will also use sleep function, requring additional pin (sleePin)</p>
<p>As it was stated before programming environment was <b>Arduino IDE</b> as our microcontroller board is Arduino UNO. It had two big advantages, libraries for both servo and stepper motor. Among variables there were two buttons used, one to start making a drink and other one as a sensor. I will describe second one a bit later. Our stepper motor driver required at least two pins: <i>stePin</i> in order to start movement and <i>dirPin</i>, which was responsible for direction of movement (clockwise or counter-clockwise). In our case it controlled movement of the cup (left/right). During testing with laboratory power supply I observed that when idle stepper motor draws quite a bit current. I decided we will also use sleep function, requiring additional pin (sleePin)</p>
<p>Two remaining variables are start button beginning state and servo beginning position.</p>
......
......@@ -65,7 +65,7 @@
</i></p>
<p>In the moment I realized that we have sandblaster in our FabLab I decided within a moment. I always wanted to try it as I've seen what sort of magic it can make on shiny and polished surfaces. It was also interesting to test different kind of materials... <br>
<i>...even stupid choices, who never tried before me, like cardboard. Well, by "never" I mean no one in our local FabLab. Probably there were such people in the history of humankind.</i></p>
<i>...even stupid choices, who never tried before me, like cardboard. Well, by "never" I mean no one in our local FabLab. Probably there were such people in the history of humankind.</i></p>
<h2>Individual Assignment: Sandblasting!</h2>
......@@ -73,11 +73,11 @@
<h3>Designing with InkScape</h3>
<p>Designing was fairly simple task. To honor last sezon of <b>Game of Thrones</b> I decided to sandblast House Stark banner with their family motto. In order to do it I searched for graphics using Google. Then I imported it into <b>Inkscape</b> and by using <b>Trace Bitmap</b> changed it into vector graphics. Below there are values I used to proceed efficiently. </p>
<p>Designing was fairly simple task. To honor last season of <b>Game of Thrones</b> I decided to sandblast House Stark banner with their family motto. In order to do it I searched for graphics using Google. Then I imported it into <b>Inkscape</b> and by using <b>Trace Bitmap</b> changed it into vector graphics. Below there are values I used to proceed efficiently. </p>
<p>The plan was to cut the mask on Vinylcutter and cover areas, which should remain untouched by sand.</p>
<img src="style/A17/Ink1.png" width="500" class="center"><caption><center>Stark's direwolf - changing it into vector</center></caption><br>
<img src="style/A17/Ink1.png" width="500" class="center"><caption><center>Stark's Direwolf - changing it into vector</center></caption><br>
<p>However, I was not sure about how sharp edges I can create with sand. To be honest I totally didn't know what to expect. I required some test runs. I was wondering how thin lines or objects I could leave.</p>
......@@ -209,16 +209,16 @@
<p><b>Cardboard</b> - ouch, that was dumb. Not only I could not remove mask after blasting but it also left almost no mark. Well, the only marks were just scratched paper. <i>Definitely I do not recommend.</i></p>
<p><b>Acryllic</b> - this wasn't that bad. With quite longer time it could be very promising material. Nevertheless, the issue is low visibility of any results. Mask hold nicely to it but very poor visual effects.</p>
<p><b>Acrylic</b> - this wasn't that bad. With quite longer time it could be very promising material. Nevertheless, the issue is low visibility of any results. Mask hold nicely to it but very poor visual effects.</p>
<p><b>Plywood</b> - quite difficult to glue mask to it but results are quite nice. Blaster regions are greyish. Even letters were visible. </p>
<p><b>Plywood</b> - quite difficult to glue mask to it but results are quite nice. Blaster regions are grayish. Even letters were visible. </p>
<p><b>Metal</b> - best results (<i>Cpt. Obvious</i>, mask holds tight to the background and results are well visible. I have to admitt it look very nice after. Details are preserved but some very small things may be blown (dots, inside parts of letters, poorly glued figures, etc.). <u>This is my choice for blasting House Stark banner and motto</u>. </p>
<p><b>Metal</b> - best results (<i>Capt. Obvious</i>, mask holds tight to the background and results are well visible. I have to admit it look very nice after. Details are preserved but some very small things may be blown (dots, inside parts of letters, poorly glued figures, etc.). <u>This is my choice for blasting House Stark banner and motto</u>. </p>
<table style="width:100%">
<tr>
<th><center>Cardboard</center></th>
<th><center>Acryllic</center></th>
<th><center>Acrylic</center></th>
</tr>
<tr>
<td><img src="style/A17/22cardboard.jpg" width="300" class="center"></td>
......@@ -234,7 +234,7 @@
</tr>
</table>
<p>Time for final work. I decided to use detailed mask (unconnected pieces) as I oberved that details preserved on metal background. In my eyes it would look better, almost like hockey team banner. On the left photo before and on the right - after blasting.</p>
<p>Time for final work. I decided to use detailed mask (unconnected pieces) as I observed that details preserved on metal background. In my eyes it would look better, almost like hockey team banner. On the left photo before and on the right - after blasting.</p>
<table style="width:100%">
<tr>
......
......@@ -114,7 +114,7 @@
<p>The question is how can we know the kerf? Well, there is more than one answer on that. First of all we can use Goggle.
<a href="https://www.sculpteo.com/en/lasercutting/laser-cutting-materials/cardboard-material/">Just click here!</a>
But more fun is to calculate kerf by yourself. A bit of Math and 2D Design with Inkscape won't hurt (that much). We (Gleb, Marjo, Perttu and I) decided that we will measure kerf of two materials: MDF and Acryl. Above images are related. For this purpose we created a "ladder" from rectangles with size of 5 x 20 [mm]. We knew designed height. Nevertheless, measured height was different. We averaged measured error by 20. Moreover, there are parameters other than used material. Those will be mentioned later. Despite of possibility of changing </p>
But more fun is to calculate kerf by yourself. A bit of Math and 2D Design with Inkscape won't hurt (that much). We (Gleb, Marjo, Perttu and I) decided that we will measure kerf of two materials: MDF and Acrylic. Above images are related. For this purpose we created a "ladder" from rectangles with size of 5 x 20 [mm]. We knew designed height. Nevertheless, measured height was different. We averaged measured error by 20. Moreover, there are parameters other than used material. Those will be mentioned later. Despite of possibility of changing </p>
<img src="style/A3/measkerf.jpg" width="500" class="center"><caption><center>Tools you might use, they are similar in every other software.</center></caption><br>
......@@ -132,7 +132,7 @@
<p><b>During the process of measuring Kerf, a lot of things may go wrong. In our case size of designed rectangles were not wide enough because of that we had to change size to 5 x 50 [mm]. Our explanation is that we are trying to stay eco!</b></p>
<img src="style/A3/falling.jpg" width="500" class="center"><caption><center>Forgot to mention! Always take into account crate size of your lasercutter. Otherwise this may happen.</center></caption><br>
<img src="style/A3/falling.jpg" width="500" class="center"><caption><center>Forgot to mention! Always take into account crate size of your laser cutter. Otherwise this may happen.</center></caption><br>
<img src="style/A3/falling2.jpg" width="500" class="center"><caption><center>They will stay there forever.</center></caption><br>
......@@ -152,7 +152,7 @@
<img src="style/A3/freq.jpg" width="500" class="center"><caption><center>This is how frequency/wavelength pattern is visible</center></caption><br>
<h2>Individual Assignment</h2>
<h3>Vinylcutter</h3>
<h3>Vinyl cutter</h3>
<img src="style/A3/cutter.jpg" width="500" class="center"><caption><center>The device, which I will use</center></caption><br>
......@@ -204,15 +204,15 @@
<p> Vinylcutting was quite simple. Now this is time for some real engineering. In order to design my versions of GIKs I decided to download Draftsize 2018 using this link: <a href="https://www.3ds.com/products-services/draftsight-cad-software/free-download/">Click</a> . I successfully passed activation part as Draftsize is not free to use. Opened it and decided to use FreeCAD.</p>
<p> Vinyl cutting was quite simple. Now this is time for some real engineering. In order to design my versions of GIKs I decided to download Draftsize 2018 using this link: <a href="https://www.3ds.com/products-services/draftsight-cad-software/free-download/">Click</a> . I successfully passed activation part as Draftsize is not free to use. Opened it and decided to use FreeCAD.</p>
<img src="style/A3/draftsight.png" width="500" class="center"><caption><center>Welcome screen in my mother tongue.</center></caption><br>
<p>The main reason is that I can but also I would need to learn how to use it. In the future in case I need to design something i would need to pay. Well, long live freeware! Actually after first mistakes and issues I discovered that FreeCAD is not that bad and kind of liked it. I'm sure I just touched abilities of this 'truck'. Still I feel it would be much easier in the future. In upcoming final project.</p>
<p>The main reason is that I can but also I would need to learn how to use it. In the future in case I need to design something i would need to pay. Well, long live Freeware! Actually after first mistakes and issues I discovered that FreeCAD is not that bad and kind of liked it. I'm sure I just touched abilities of this 'truck'. Still I feel it would be much easier in the future. In upcoming final project.</p>
<p>Once again I was using youtube tutorials. Especially this two were most important:
<a href="https://www.youtube.com/watch?v=lf-up4UjG58&t=2754s">FreeCAD parametric design</a>
<a href="https://www.youtube.com/watch?v=PlLH0JtEZps">The part design workbench</a>. In case of any problems I was googling name of issue. - Allright, Cpt. Obvious. Ah, when I was designing I was listening to:
<a href="https://www.youtube.com/watch?v=PlLH0JtEZps">The part design workbench</a>. In case of any problems I was googling name of issue. - Allright, Capt. Obvious. Ah, when I was designing I was listening to:
<a href="https://www.youtube.com/watch?v=P2BI-KR2L6o">Dead Man's Opera</a> Might be important info in the future.</p>
<p>Well, I failed quite much on the beginning. My lines were not connected to each other. Everything was falling apart. When CAD informed me that my figure has 56 degrees of freedom I was even wondering how this is possible. Then I decided I will spend much more time than first 10 minutes of each tutorial. I learned how to connect lines (simply wait for little dot to appear) and how to put constraints. Those are really important and basically describes how drawings are relating to each other.</p>
......@@ -288,7 +288,7 @@
<li>Wait a moment and take out your "results"</li>
</ul>
<p>Did I mention that cardboard sucks? Alright, this is the time then :). In general process was successful. Still, cardboard is not entirely flat. It bends. No weight, tape or blutack will fix it. It looks like cardboard is resistant to any force (except water and fire). This changes focus, which influences the kerf. Some of my GIKs are alright. Some of them are not fitting that well. Nevertheless, I learned my lesson. Below couple photos of my connected pieces and problems with cut (It had to be repeated). Lastly, I would improve the design for the future. Holes should be placed in some bigger distance. Furthermore, cavity(hole) length could be a ratio of the each piece size. Currently those are also parametric values but no relation.</p>
<p>Did I mention that cardboard sucks? Alright, this is the time then :). In general process was successful. Still, cardboard is not entirely flat. It bends. No weight, tape or BluTack will fix it. It looks like cardboard is resistant to any force (except water and fire). This changes focus, which influences the kerf. Some of my GIKs are alright. Some of them are not fitting that well. Nevertheless, I learned my lesson. Below couple photos of my connected pieces and problems with cut (It had to be repeated). Lastly, I would improve the design for the future. Holes should be placed in some bigger distance. Furthermore, cavity(hole) length could be a ratio of the each piece size. Currently those are also parametric values but no relation.</p>
<img src="style/A3/lines.jpg" width="500" class="center"><caption><center>This is happening, when your laser is out of focus, it has to be repeated</center></caption><br>
......
......@@ -57,7 +57,7 @@
<div id="content">
<h1>Week 5: Electronics Production</h1>
<p>Welcome in XXI century, those are words, which I'd like to start as reporting for work done in previous week. Design of electronics is really interesting process. Anyone could do it, even at home. For such you would need an iron, laser printer with some special papersheets and of course your own design. Later on there is need for some weak acid, patience and soldering station. I used to do such stuff as a hobby during my studies in Gdansk. </p>
<p>Welcome in XXI century, those are words, which I'd like to start as reporting for work done in previous week. Design of electronics is really interesting process. Anyone could do it, even at home. For such you would need an iron, laser printer with some special paper sheets and of course your own design. Later on there is need for some weak acid, patience and soldering station. I used to do such stuff as a hobby during my studies in Gdansk. </p>
<p>Of course there are also totally professional approaches such as ordering PCB (Printed Circuit Board) from external company, which would take a bit of your money in exchange of their work. If you are careful with your documentation they may even solder your components onto PCB. Usually those companies are not affected by such limitations as your own 'home-brewed' technology of making PCB. Still you have to wait quite a long and costs are much higher.</p>
......@@ -216,7 +216,7 @@
<img src="style/A4/zoom.jpg" width="500" class="center"><caption><center>Zoom on traces</center></caption><br>
<p>The next step is preparation of electronic components. Once again using <a href="http://fab.cba.mit.edu/classes/863.16/doc/projects/ftsmin/index.html">Brian's webpage</a> I managed to find <b>Bill of materials</b>and localize corresponding parts.</p>
<p>The next step is preparation of electronic components. Once again using <a href="http://fab.cba.mit.edu/classes/863.16/doc/projects/ftsmin/index.html">Brian's web page</a> I managed to find <b>Bill of materials</b>and localize corresponding parts.</p>
<img src="style/A4/bom.jpg" width="500" class="center"><caption><center>Graphical "BOM"</center></caption><br>
......
......@@ -273,7 +273,7 @@
<table style="width:100%">
<ul><li>Quality of printing letters (surface/inprint)</li></ul>
<ul><li>Quality of printing letters (surface/in-print)</li></ul>
<tr>
<th><center>Stratasys Fortus 380MC</center></th>
<th><center>Leapfrog Creatr HS</center></th>
......@@ -351,7 +351,7 @@
<img src="style/A5/Photos/holder2.jpg" width="250" class="center">
<p><caption><center>Back of the knife holder, left and right side</center></caption><p><br>
<p>It is pretty long thing, our knife holder. I realized that it would require one long part. I wasn't sure if any of the printers is able to print something so long. I decided to print two pieces, as the knife holder is symmetrical (later I have to use mirror image on my design). I used Autodesk Fusion 360 in designing process and caliper. There are numerous tutorials on YouTube and a lot of answers on forums how to use software. List of tutorials I was using: </p>
<p>It is pretty long thing, our knife holder. I realized that it would require one long part. I wasn't sure if any of the printers is able to print something so long. I decided to print two pieces, as the knife holder is symmetrical (later I have to use mirror image on my design). I used <b>Autodesk Fusion 360</b> in designing process and caliper. There are numerous tutorials on YouTube and a lot of answers on forums how to use software. List of tutorials I was using: </p>
<ul>
<li><a href="https://www.youtube.com/watch?v=A5bc9c3S12g">Fusion for beginners</a></li>
......@@ -443,7 +443,7 @@
<p>As I mentioned there were plenty of issues, while trying to scan the object. There is major influence of illumination, distance between object and scanner, steadiness of scanner, even rotation of the object, speed of scanning. All of those factors should be taken into account in order to get some decent result. Furthermore, object cannot be same color as background. Still small details of the object are lost, e.g. sandpaper and glass would look as same texture.
<p><i>Probably biggest problem was issue with the scanner' software as I could not save files. In general I disliked the process. Hopefully, technology will be continuously developed and improved. Future generations of FabAcademy will have easier life.</i></p>
<p><i>Probably biggest problem was issue with the scanner' software as I could not save files. In general I disliked the process. Hopefully, technology will be continuously developed and improved. Future generations of Fab Academy will have easier life.</i></p>
<p>This is how I ended up with Scann3D. This is phone app, which allows to scan object and save files (in first three days of free trial). There was no time to loose since I need to save at least .STL that 3D printer may read. I took first thing, which I found - a paper knife. </p>
......@@ -461,7 +461,7 @@
<h3>Files:</h3>
<a href="style/A5/Knifeholder.zip" download="3D design">Download: Knife holder files</a><br>
<a href="style/A5/Paperknife.zip" download="3D scanning">Download: Paperknife (3D scan)</a><br>
<a href="style/A5/Paperknife.zip" download="3D scanning">Download: Paper knife (3D scan)</a><br>
</div>
</div>
......
......@@ -109,9 +109,9 @@
<p>However, before we start. There is knowledge from the elders scrolls really handy. Photo can be found below.</p>
<img src="style/A6/scrolls.jpg" width="500" class="center"><caption><center>This is origin of the ancient Electronics. The word PUIMURI (eng. combine-harvester), which is combo of Ohm's law and calculation of Power!</center></caption><br>
<img src="style/A6/scrolls.jpg" width="500" class="center"><caption><center>This is origin of the ancient Electronics. The word PUIMURI (Eng. combine-harvester), which is combo of Ohm's law and calculation of Power!</center></caption><br>
<p>In order to design the printed circuit board I decided to use <s>Cadsoft Eagle</s> . Ah right! It is currently part of Autodesk! So as most of my fellow students, I decided to use Autodesk Eagle, version 9.3.1. I believe it is freeware, unless you are using more than two layers for wiring. There are of course other options for designing PCB such as:</p>
<p>In order to design the printed circuit board I decided to use <s>Cadsoft Eagle</s> . Ah right! It is currently part of Autodesk! So as most of my fellow students, I decided to use Autodesk Eagle, version 9.3.1. I believe it is Freeware, unless you are using more than two layers for wiring. There are of course other options for designing PCB such as:</p>
<ul>
<li>KiCad</li>
......@@ -127,7 +127,7 @@
<img src="style/A6/addparts.png" width="500" class="center"><caption><center>Using parts from fablib</center></caption><br>
<p>Placing the parts is crucial. Schematic should be easily understandable for future debugging and testing. What I really dislike is the way Attiny was sketeched. All pins on one side. It forces putting "all the weight" of the schemtic on one side. In future it will became more obvious.</p>
<p>Placing the parts is crucial. Schematic should be easily understandable for future debugging and testing. What I really dislike is the way Attiny was sketched. All pins on one side. It forces putting "all the weight" of the schematic on one side. In future it will became more obvious.</p>
<img src="style/A6/puttingparts.png" width="500" class="center"><caption><center>Placing the parts</center></caption><br>
......@@ -135,7 +135,7 @@
<img src="style/A6/schem.png" width="500" class="center"><caption><center>Finished Schematic</center></caption><br>
<p>Now the fun begins. By pressing <b>Generate/Switch to board</b> PCB layout is getting created or edited. Components should be alligned and positioned in most efficient way, in terms of space and length of wires. Once again shortcuts are really handy. This time connection between points are made with <b>Route</b> tool. There are couple tips that might be important. Layout create menu is visible below. Just in front of tips.</p>
<p>Now the fun begins. By pressing <b>Generate/Switch to board</b> PCB layout is getting created or edited. Components should be aligned and positioned in most efficient way, in terms of space and length of wires. Once again shortcuts are really handy. This time connection between points are made with <b>Route</b> tool. There are couple tips that might be important. Layout create menu is visible below. Just in front of tips.</p>
<img src="style/A6/menu.png" width="500" height="15" class="center"><caption><center> Layout menu - <a href="style/A6/menu.png" target="_blank">Click to enlarge</a></center></caption><br>
......@@ -158,7 +158,7 @@
<img src="style/A6/clearance.png" width="500" class="center"><caption><center>Clearance values</center></caption><br>
<p>At the moment we are in design rules. Just after placign components and connecting them I managed to haev only one issue with the letters I put to customize my board. The width was too small. Nevertheless, I approved this Error as I knew it will be possible to mill it. Final board with some key shortcuts below.</p>
<p>At the moment we are in design rules. Just after placing components and connecting them I managed to have only single issue with the letters I put to customize my board. The width was too small. Nevertheless, I approved this Error as I knew it will be possible to mill it. Final board with some key shortcuts below.</p>
<img src="style/A6/assign.png" width="500" class="center"><caption><center>Clearance values</center></caption><br>
......@@ -183,7 +183,7 @@
<h3>Programming the board</h3>
<p>For programming purposes I decided to use Atmel Studio. I simply downloaded it from <a href="https://www.microchip.com/mplab/avr-support/atmel-studio-7">Atmel Website</a>. Instalation was fairly simple and it turned out succesfull. I decided that I will use Neil's code, which I took from <a href="http://academy.cba.mit.edu/classes/electronics_design/index.html"> Here </a>.
<p>For programming purposes I decided to use Atmel Studio. I simply downloaded it from <a href="https://www.microchip.com/mplab/avr-support/atmel-studio-7">Atmel Website</a>. Installation was fairly simple and it turned out successful. I decided that I will use Neil's code, which I took from <a href="http://academy.cba.mit.edu/classes/electronics_design/index.html"> Here </a>.
</p>
<img src="style/A6/Programming/Neil.png" width="500" class="center"><caption><center>Atmel Studio at its finest</center></caption><br>
......@@ -205,7 +205,7 @@
<img src="style/A6/Programming/Custom.png" width="500" class="center"><caption><center>Setting compilation options</center></caption><br>
<p>At this point I could programm my chip, which of course I did. I had to click <b>Start without debugging</b> - as I don't have any debuggers. I was happy with clear output window. I guess I was lucky because it went witout <u>Errors or Warnings</u>. Nevertheless it proven my Atmel Studio is properly prepared for future work.</p>
<p>At this point I could program my chip, which of course I did. I had to click <b>Start without debugging</b> - as I don't have any debuggers. I was happy with clear output window. I guess I was lucky because it went without <u>Errors or Warnings</u>. Nevertheless it proven my Atmel Studio is properly prepared for future work.</p>
<img src="style/A6/Programming/Programmed.png" width="500" class="center"><caption><center>Output window, no errors are visible</center></caption><br>
......@@ -215,7 +215,7 @@
<h3>Testing the board</h3>
<p>Testing was very simple. I had to connect FTDI to USB adapter (Future Technology Devices International) cable. Name is nice but cable is just adapter between USB and 6 goldpins. Immediately, after connecting te cable red LED started to blink with intervals. It proven that process was successful. </p>
<p>Testing was very simple. I had to connect FTDI to USB adapter (Future Technology Devices International) cable. Name is nice but cable is just adapter between USB and 6 gold pins. Immediately, after connecting the cable red LED started to blink with intervals. It proven that process was successful. </p>
......
......@@ -65,7 +65,7 @@
<h3>Team: every single student of FA2019</h3>
<p>There were couple things on the menu, we should familiarize with speeds, feeds, toolpath and test runout on our machine, which for this week was <b>Rensi E2-1325</b>. </p>
<p>There were couple things on the menu, we should familiarize with speeds, feeds, toolpath and test run-out on our machine, which for this week was <b>Rensi E2-1325</b>. </p>
<img src="style/A7/GPhotos/20190307_104246.jpg" width="500" class="center"><caption><center>Rensi E2-1325 CNC Milling machine</center></caption><br>
......@@ -98,7 +98,7 @@
<p>There are plenty of milling bits to be used. One screw has to be unscrewed in order to change milling bit. It is important to attach it tight. It is same easy, when using small-size milling machines such as ones used with electronics.</p>
<li>Running simulation - </li>
<p>Despite of possible simulations in Fusion 360, there is once again possiblity to simulate the process. In order to do it <b>Simulation</b> has to be chosen from the tab menu (NCStudio). Simulation is a good idea, it don't take much time and troubleshoot possible issues.</p>
<p>Despite of possible simulations in Fusion 360, there is once again possibility to simulate the process. In order to do it <b>Simulation</b> has to be chosen from the tab menu (NCStudio). Simulation is a good idea, it don't take much time and troubleshoot possible issues.</p>
<li>Begin milling</li>
<p>After everything was set correctly Grande Finale is just clicking on one button</p>
......@@ -140,7 +140,7 @@
</tr>
</table>
<li>Setting origo (X,Y,Z) - manual way or mobile calibrator</li>
<li>Setting origos (X,Y,Z) - manual way or mobile calibrator</li>
<table style="width:100%">
<tr>
......@@ -200,7 +200,7 @@
<img src="style/A7/Screenshots/C.png" width="500" class="center"><caption><center>Align tool</center></caption><br>
<p>It helped me to check if my dimensions are right and correct sketches almost instantaneous. Below photo of alignment of the shelves. Tolerance of milling is less than 1 mm. This means I don't really need to leave any free spacing (comparing to lasercutting and kerf) </p>
<p>It helped me to check if my dimensions are right and correct sketches almost instantaneous. Below photo of alignment of the shelves. Tolerance of milling is less than 1 mm. This means I don't really need to leave any free spacing (comparing to cutting with laser and kerf) </p>
<img src="style/A7/Screenshots/D.png" width="500" class="center"><caption><center>Alignment of the shelves</center></caption><br>
......@@ -223,7 +223,7 @@
<caption><center>Correct alignment for machine milling</center></caption><br>
<p>Time to choose <b>Manufacture Workspace</b> from the first tab. This is just beginning. After that new options are available. I think I mentioned that I already started to like Fusion, devops kept it clear and simple.</p>
<p>Time to choose <b>Manufacture Workspace</b> from the first tab. This is just beginning. After that new options are available. I think I mentioned that I already started to like Fusion, developers kept it clear and simple.</p>
<a href="style/A7/Screenshots/11.png" target="_blank">
......@@ -266,7 +266,7 @@
<img src="style/A7/Screenshots/16.jpg" width="500" class="center"></a>
<caption><center>2D Pocket: Height</center></caption><br>
<p>Next tab, passes. In general the most important value is in <b>Multiple Depths</b>. Even stepdowns has to be used with some maximum roughing stepdown (I simply used 3 mm). It means that stepdowns will be adjusted as close to 3 millimeters.</p>
<p>Next tab, passes. In general the most important value is in <b>Multiple Depths</b>. Even step-downs has to be used with some maximum roughing step-down (I simply used 3 mm). It means that step-downs will be adjusted as close to 3 millimeters.</p>
<a href="style/A7/Screenshots/17.jpg" target="_blank">
<img src="style/A7/Screenshots/17.jpg" width="500" class="center"></a>
......@@ -296,7 +296,7 @@
<img src="style/A7/Screenshots/21.jpg" width="500" class="center"></a>
<caption><center>2D Contours: Height</center></caption><br>
<p>In passes I also used 3 mm stepdown with even values. Order by islands.</p>
<p>In passes I also used 3 mm step-down with even values. Order by islands.</p>
<a href="style/A7/Screenshots/22.jpg" target="_blank">
<img src="style/A7/Screenshots/22.jpg" width="500" class="center"></a>
......
......@@ -66,16 +66,16 @@
<h3>Whole group, yay!</h3>
<p>Under a bit enigmatic sentence: "compare the performance and development workflows for other architectures" simple meaning is hiding. We <i>just</i> need to test couple programming environments, programmers or languages. So far we were utilizing command line to compile, make files and upload the programme onto the chip, but there are plenty other ways to do it.</p>
<p>Under a bit enigmatic sentence: "compare the performance and development workflows for other architectures" simple meaning is hiding. We <i>just</i> need to test couple programming environments, programmers or languages. So far we were utilizing command line to compile, make files and upload the program onto the chip, but there are plenty other ways to do it.</p>
<p>Using Arduino IDE we were able to test two of following programmers: </p>
<ul>
<li>STM32 Nucleo-64 development board with STM32F401RE MCU</li>
<li>ESP32 LOLIN32 development board/li>
<li>ESP32 LOLIN32 development board</li>
</ul>
<p>It is also possible to adjust Arduino IDE with our previously made programmer (USBTinyISP). I just discovered it is much simpler than in Atmel Studio. Allright, first of all some documentation that we were using during our work: </p>
<p>It is also possible to adjust Arduino IDE with our previously made programmer (USBTinyISP). I just discovered it is much simpler than in Atmel Studio. Alright, first of all some documentation that we were using during our work: </p>
<ul>
<li><a href="https://github.com/stm32duino/BoardManagerFiles/raw/master/STM32/package_stm_index.json.">STM32 for IDE</a></li>
......@@ -176,7 +176,7 @@
<table style="width:100%">
<tr>
<th><center><b>Ports desciption</b></center></th>
<th><center><b>Ports description</b></center></th>
</tr>
<tr>
<td><center><img src="style/A8/Individual/CaptureA.JPG" width="600" class="center"></center></td>
......@@ -221,7 +221,7 @@
<h3>Atmel Studio</h3>
<p>I described how to programme my FabBoard with Atmel studio couple weeks ago in <a href="assignment4.html"> Electronics Production</a>. Fortunately, I had everything prepared and working. The only task was to change the code and adjust it that when button will be pushed - LED should turn on. I simply combined previous year student's code. Checked the parameters. Worked perfectly. Below project creation steps with proof of proper compilation.</p>
<p>I described how to program my FabBoard with Atmel studio couple weeks ago in <a href="assignment4.html"> Electronics Production</a>. Fortunately, I had everything prepared and working. The only task was to change the code and adjust it that when button will be pushed - LED should turn on. I simply combined previous year student's code. Checked the parameters. Worked perfectly. Below project creation steps with proof of proper compilation.</p>
......@@ -233,9 +233,9 @@
<h3>Arduino IDE</h3>
<p>Then it was time for Arduino environment to shine. It is much simpler for the drawback of size and speed of compilation and programming. <i>For instance of FabAcademy projects, the differences are neglectable tiny. As tiny as ATTiny.</i></p>
<p>Then it was time for Arduino environment to shine. It is much simpler for the drawback of size and speed of compilation and programming. <i>For instance of Fab Academy projects, the differences are negligible tiny. As tiny as ATTiny.</i></p>
<p>Since I already added different boards during group work I simply used: <a href="http://highlowtech.org/?p=1695">This webpage</a> to add ATTiny44 to programmable boards. Package name is "attiny by David A. Mellis". In my case version was 1.0.2. Most likely previous versions might work with minor differences between them (pinmaps I guess). After that step microcontroller, appeared in board manager. There were couple things to set such as clock and port, which FTDI cable was connected to (just in case of future serial transmissions). Quite easy process. Below a screenshot with correct values. </p>
<p>Since I already added different boards during group work I simply used: <a href="http://highlowtech.org/?p=1695">This web page</a> to add ATTiny44 to programmable boards. Package name is "attiny by David A. Mellis". In my case version was 1.0.2. Most likely previous versions might work with minor differences between them (pinmaps I guess). After that step microcontroller, appeared in board manager. There were couple things to set such as clock and port, which FTDI cable was connected to (just in case of future serial transmissions). Quite easy process. Below a screenshot with correct values. </p>
<img src="style/A8/Individual/ATSettings.png" width="500" class="center"><caption><center>Arduino ready to be programmed</center></caption><br>
......
......@@ -58,11 +58,11 @@
</div>
<div id="content">
<h1>Assignments</h1>
<p>According to the FabAcademy schedule I'm obligated to post my weekly assignments. You may find them in here. For your own convenience please use panel on the right side. It will guide you trough. </p>
<p>According to the Fab Academy schedule I'm obligated to post my weekly assignments. You may find them in here. For your own convenience please use panel on the right side. It will guide you trough. </p>
<p>Each sub-page is showing my development and way of thinking or solving the issues. If you have any doubts or questions don't hestitate to contact me. </p>
<p>Each sub-page is showing my development and way of thinking or solving the issues. If you have any doubts or questions don't hesitate to contact me. </p>
<p><a href="http://fabacademy.org/2019/schedule.html">Fabacademy 2019 - schedule</a></p>
<p><a href="http://fabacademy.org/2019/schedule.html">Fab Academy 2019 - schedule</a></p>
......
......@@ -67,7 +67,7 @@
<li>Dark Sky map (I wish a real one)</li>
<li>Microphone (jack) input</li>
<li>Sound modulator</li>
<li>Speaker oputut (jack)</li>
<li>Speaker output (jack)</li>
<li>Photoresistor(s)</li>
<li>Thermistor(s)</li>
<li>Buttons (LCD screen interactions)</li>
......
......@@ -72,7 +72,7 @@
<p>Considering a fact that <b>TARS</b> is a movie character, which belongs to <i>Paramount Pictures</i> / <i>Warner Bros</i> I own only limited rights. I would state that my license regarding hardware and project idea belongs to <b>Creative Commons</b>. For software part I'm choosing <b>MIT license</b>.<br><br> <i>Hint: If you will make it, please share results with me. I would be extremely happy to see it.</i></p>
<p>Considering a fact that <b>TARS</b> is a movie character, which belongs to <i>Paramount Pictures</i> / <i>Warner Bros</i> I own only limited rights. I would state that my license regarding hardware and project idea belongs to <b>Creative Commons</b>. For software part I'm choosing <b>MIT license</b>.<br><br> <i>Side note: If you will make it, please share results with me. I would be extremely happy to see it.</i></p>
<h2>Results of the week</h2>
......@@ -92,6 +92,7 @@
<p>Copyright &copy; night_sky_2 | <a href="http://validator.w3.org/check?uri=referer">HTML5</a> | <a href="http://jigsaw.w3.org/css-validator/check/referer">CSS</a> | <a href="http://www.html5webtemplates.co.uk">Website templates</a></p>
</div>
</div>
</body>
</html>
......@@ -115,14 +115,14 @@
<h2>What have you learned?</h2>
<p>The list is quite long. Basically every single week was teaching me something new. I learned a LOT about 2D and 3D designs. I also learned by heart way to fabricate PCBs, which might be very handy in the future. Not mentioning improving programming skills. I think I have never spent more time with Arduino IDE. I remember machining week was fun as I made my own piece of furniture. Molding and casting and moment, when I made a <i>Witcher</i> medalion and many many more. I would like to mention most important things during specific weeks: </p>
<p>The list is quite long. Basically every single week was teaching me something new. I learned a LOT about 2D and 3D designs. I also learned by heart way to fabricate PCBs, which might be very handy in the future. Not mentioning improving programming skills. I think I have never spent more time with Arduino IDE. I remember machining week was fun as I made my own piece of furniture. Molding and casting and moment, when I made a <i>Witcher</i> medallion and many many more. I would like to mention most important things during specific weeks: </p>
<ul>
<li><a href="assignment3.html">Computer-controlled cutting</a> - first time working with laser cutter</li>
<li><a href="assignment4.html">Electronics production</a> - another way to make PCBs</li>
<li><a href="assignment5.html">3D scanning and printing</a> - limitations of 3D printers</li>