...
 
Commits (2)
......@@ -143,7 +143,7 @@
Week 11 (Mar 27): <a href="week11.html">Input devices </a><br>
Week 12 (Apr 03): <a href="week12.html">Output devices </a><br>
Week 13 (Apr 10): <a href="week13.html">Applications and Implications </a><br>
Week 14 (Apr 24): <a href="week14.html">Networking and Communications </a><br>
Week 14 (Apr 24): Networking and Communications <br>
Week 15 (Apr 30): Mechanical Design<br>
Week 16 (May 08): Interface and application programming<br>
Week 17 (May 15): Machine design<br>
......
This diff is collapsed.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="Lucas Lim's Learning Journey throughtout the six months Fab Academy 2019 Diploma course">
<meta name="author" content="Lucas Lim">
<title>Fab Academy 2019 - Lim Eng Hwa Lucas</title>
<!-- Load my style sheet -->
<link rel="stylesheet" type="text/css" href="style/mystyle.css">
<!-- Load Font Awesome Free Icons from online CDN -->
<!-- (home button, dropdown arrow) -->
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.7.2/css/all.css" integrity="sha384-fnmOCqbTlWIlj8LyTjo7mOUStjsKC4pOpQbqyi7RrhN7udi9RwhKkMHpvLbHG9Sr" crossorigin="anonymous">
<!-- Load jquery.js library for loading html files-->
<script src="scripts/jquery-1.4.2.js"></script>
<!-- Load the exercises, project html files into Top Navigation Bar -->
<script>
function menu() {
$('#assignments').load("assignments-menu.html");
$('#project').load("project-menu.html");
$('#footer_info').load("footer_info.html");
}
</script>
</head>
<body onload="menu()">
<!-- Top Navigation Bar -->
<div class="navbar">
<a class="activetag" href="index.html">
<!-- Home icon from Font Awesome -->
<font color="#3333cc"><i class="fa fa-home fa-lg"></i>
<b>Home&nbsp;&nbsp;</b></a></font>
<div class="navbar-right">
<a href="aboutme.html">About Me</a>
<div class="dropdown">
<button class="dropbtn">Assignments
<!-- Dropdown button from Font Awesome -->
<i class="fa fa-caret-down"></i>
</button>
<div class="dropdown-content">
<div id="assignments" class="dropdown-menu">
</div>
</div>
</div>
<div class="dropdown">
<button class="dropbtn">Final Project
<!-- Dropdown button from Font Awesome -->
<i class="fa fa-caret-down"></i>
</button>
<div class="dropdown-content">
<div id="project" class="dropdown-menu">
</div>
</div>
</div>
<a href="contactme.html">Contact</a>
</div>
</div>
<div class="padding3" style="background-color: #f1f1f1;">
<div class="column1">
<img src="aboutme/images/fablabsp_color.png" width="70%">
</div>
<div class="column2">
<font color="grey"><b>Fab Academy 2019 - Lucas Lim</b></font><br>
<span class="homepg-title">
<b><i>15. Mechanical Design</i></b></span><br>
</div>
</div>
<br>
<div>
<h3>Assignment :</h3>
<p>
<i>
<ul>
Group assignment:
<li>design a machine that includes mechanism+actuation+automation</li>
<li>build the mechanical parts and operate it manually</li>
<li>document the group project and your individual contribution</li>
</ul>
</i>
</p>
</div>
<br>
<div>
<h3>Week 15 learning journey :</h3>
<p class="padding1">
I had a busy schedule last week and was sick on Sunday and Monday, therefore not been able to complete my assignment.
</p>
</div>
<br>
<div>
<h2>It is coming...</h2>
<p class="padding1">
I am following this <a href="https://www.instructables.com/id/Laser-Cut-Sphere-O-Bot/">link</a> on Instructables and will be making a 'eggbot' or a egg drawing/painting machine. However I will be designing my own version.
<br><br>
<a href="https://www.instructables.com/id/Laser-Cut-Sphere-O-Bot/">
<img src="https://cdn.instructables.com/FIS/DZAD/HXG6PN6H/FISDZADHXG6PN6H.LARGE.jpg" alt="" style="width:30%"></a>
<br><br>
The eggbot is a simple '2-axis' drawing machine that can draw on most spherical surfaces, eg. egg, ping-pong ball, etc. An example of it's application is drawing the decoration on Easter Eggs.<br>
<br>
Reference :<br>
- <a href="https://www.instructables.com/id/Laser-Cut-Sphere-O-Bot/">instructable: Laser Cut Sphere-O-Bot</a><br>
- <a href="https://egg-bot.com">The Original Egg Bot</a><br>
- <a href="https://www.instructables.com/id/DIY-Arduino-controlled-Egg-Bot/">DIY Arduino Controlled Egg-Bot</a><br>
</p>
</div>
<br><br>
<div>
<h2>Components to build 'eggbot' Machine</h2>
<p class="padding1">
Electronics needed :<br>
1. Arduino Uno board<br>
2. <a hred="https://www.pololu.com/product/1182">Polulu A4988</a> stepper motor drivers<br>
3. <a hred="https://www.amazon.com/CanaKit-Stepper-Motor-with-Cable/dp/B004G51AZ4/ref=sr_1_6?ie=UTF8&qid=1405528008&sr=8-6&keywords=nema+17+stepper">2 NEMA 17 stepper motors</a><br>
4. <a hred="https://www.adafruit.com/product/169">Micro sized servo motor</a><br>
5. 5V Power adaptor<br>
6. Wire<br>
<br>
Other material/parts needed :<br>
7. <a hred="https://www.amazon.com/Amico-320mm-Stainless-Thread-Silver/dp/B00B0Q3ESS/ref=sr_1_3?s=industrial&ie=UTF8&qid=1405528276&sr=1-3&keywords=threaded+rod+m8">8mm threaded rod</a><br>
8. 9 6-32 screws/nuts<br>
9. 8 M3 screws<br>
10. Plywood<br>
<br>
Drawing tool :<br>
11. Permanent marker that make fine stroke <br>
Material :<br>
12. Small spherical objects (holiday ornaments, egg, ping pong ball, golf ball, light bulb, etc...)<br>
PS : For my machine building, I will just focus small spherical objects like the size of a chicken egg.<br>
</p>
</div>
<br>
<div class="gallery">
<a target="_blank" href="week15/images/">
<img src="week15/images/" alt="" width="600" height="400">
</a>
<div class="desc">1) ....
</div>
</div>
<div class="gallery">
<a target="_blank" href="week15/images/">
<img src="week15/images/" alt="" width="600" height="400">
</a>
<div class="desc">2)...
</div>
</div>
<!-- clear the float in abover gallery div -->
<div style="clear:both">
</div>
<div>
<h3>Files : </h3>
<p class="padding1">
My design in Fusion 360 :<br>
<a href="week7/assets/">My file</a><br>
</p>
</div>
<br><br>
<div>
<h3>References : </h3>
<p class="padding1">
<a href="https://">website</a><br>
</p>
</div>
<br>
<br>
<button onclick="topFunction()" id="myBtn" title="Go to the top"><i class="fa fa-arrow-up w3-margin-right"></i>&nbsp; &nbsp;To the top</button>
<script>
// When the user scrolls down 20px from the top of the document, show the button
window.onscroll = function() {scrollFunction()};
function scrollFunction() {
if (document.body.scrollTop > 20 || document.documentElement.scrollTop > 20) {
document.getElementById("myBtn").style.display = "block";
} else {
document.getElementById("myBtn").style.display = "none";
}
}
// When the user clicks on the button, scroll to the top of the document (w3school)
function topFunction() {
document.body.scrollTop = 0;
document.documentElement.scrollTop = 0;
}
</script>
</body>
<footer>
<div id="footer_info" class="footer1">
</div>
<br>
</footer>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="Lucas Lim's Learning Journey throughtout the six months Fab Academy 2019 Diploma course">
<meta name="author" content="Lucas Lim">
<title>Fab Academy 2019 - Lim Eng Hwa Lucas</title>
<!-- Load my style sheet -->
<link rel="stylesheet" type="text/css" href="style/mystyle.css">
<!-- Load Font Awesome Free Icons from online CDN -->
<!-- (home button, dropdown arrow) -->
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.7.2/css/all.css" integrity="sha384-fnmOCqbTlWIlj8LyTjo7mOUStjsKC4pOpQbqyi7RrhN7udi9RwhKkMHpvLbHG9Sr" crossorigin="anonymous">
<!-- Load jquery.js library for loading html files-->
<script src="scripts/jquery-1.4.2.js"></script>
<!-- Load the exercises, project html files into Top Navigation Bar -->
<script>
function menu() {
$('#assignments').load("assignments-menu.html");
$('#project').load("project-menu.html");
$('#footer_info').load("footer_info.html");
}
</script>
<!-- Load Prettify javascript for displaying code block with number and highlighting -->
<script src="https://cdn.jsdelivr.net/gh/google/code-prettify@master/loader/run_prettify.js"></script>
<!-- for putting number on every line of Prettify lines -->
<style>
li.L0, li.L1, li.L2, li.L3,
li.L5, li.L6, li.L7, li.L8 {
list-style-type: decimal !important;
color: grey;
}
</style>
</head>
<body onload="menu()">
<!-- Top Navigation Bar -->
<div class="navbar">
<a class="activetag" href="index.html">
<!-- Home icon from Font Awesome -->
<font color="#3333cc"><i class="fa fa-home fa-lg"></i>
<b>Home&nbsp;&nbsp;</b></a></font>
<div class="navbar-right">
<a href="aboutme.html">About Me</a>
<div class="dropdown">
<button class="dropbtn">Assignments
<!-- Dropdown button from Font Awesome -->
<i class="fa fa-caret-down"></i>
</button>
<div class="dropdown-content">
<div id="assignments" class="dropdown-menu">
</div>
</div>
</div>
<div class="dropdown">
<button class="dropbtn">Final Project
<!-- Dropdown button from Font Awesome -->
<i class="fa fa-caret-down"></i>
</button>
<div class="dropdown-content">
<div id="project" class="dropdown-menu">
</div>
</div>
</div>
<a href="contactme.html">Contact</a>
</div>
</div>
<div class="padding3" style="background-color: #f1f1f1;">
<div class="column1">
<img src="aboutme/images/fablabsp_color.png" width="70%">
</div>
<div class="column2">
<font color="grey"><b>Fab Academy 2019 - Lucas Lim</b></font><br>
<span class="homepg-title">
<b><i>16. Interface and Application Programming</i></b></span><br>
</div>
</div>
<br>
<div>
<h3>Assignment :</h3>
<p>
<i>
<ul>
Individual assignment:
<li>write an application that interfaces with an input &/or output device
that you made</li>
Group assignment:
<li>compare as many tool options as possible</li>
</ul>
</i>
</p>
</div>
<br>
<div>
<h3>Week 16 learning journey :</h3>
<p class="padding1">
Following up on 'week 11 - Input Devices', I attempt to work on a GUI interface for my ultrasonic distance measuring sensor using Python as well as another programming language like javascript which is web-based.
</p>
</div>
<br>
<div>
<h2>Work in progress...</h2>
<p class="padding1">
I refer to this <a href="https://www.tutorialspoint.com/python/python_gui_programming.htm">tutorial</a> on Python - GUI Programming (Tkinter)<br>
</p>
</div>
<br>
<div>
<h3>My ATTiny44 microcontroller code :</h3>
<p class="padding1">
</p>
</div>
<?prettify linenums=true?>
<pre class="prettyprint linenums" style="margin-left:20px;margin-right: 20px;">
/*
Title: Ultrasonic_sensor.ino
Author: Lucas Lim
Date Created: 2/4/2019
Last Modified: 4/4/2019
Purpose: To activate Ultrasonic sensor and send data to computer
Ultrasonic sensor Pins:
VCC: +5V DC
Trig : Trigger (INPUT) - Arduino Pin9 (PB1)
Echo: Echo (OUTPUT) - Arduino Pin10 (PB0)
GND: GND
Original code created by Rui Santos, https://randomnerdtutorials.com
*/
#include <SoftwareSerial.h>
SoftwareSerial mySerial(1, 0); // RX, TX
int trigPin = 9; // Trigger
int echoPin = 10; // Echo
long duration, cm, inches;
void setup() {
//Serial Port begin
mySerial.begin (9600);
//Define inputs and outputs
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
}
void loop() {
// The sensor is triggered by a HIGH pulse of 10 or more microseconds.
// Give a short LOW pulse beforehand to ensure a clean HIGH pulse:
digitalWrite(trigPin, LOW);
delayMicroseconds(5);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Read the signal from the sensor: a HIGH pulse whose
// duration is the time (in microseconds) from the sending
// of the ping to the reception of its echo off of an object.
pinMode(echoPin, INPUT);
duration = pulseIn(echoPin, HIGH);
// Convert the time into a distance
cm = duration/58; // uS divide by 58 to give cm
inches = duration/148; // uS divide by 148 to give inches
mySerial.print(inches);
mySerial.print("in, ");
mySerial.print(cm);
mySerial.print("cm");
mySerial.println();
//delay(1000); //delay 1 secs
}
</pre>
<br>
<div>
<h3>My first Python code</h3>
<p class="padding1">
I am new to Python programming and after hearing Python mentioned a couple of time during lesson, therefore I would like to explore on it. In the future, I hope to be like Neil to create UI (User interface) using python.
<br><br>
My FTDI connector is detected as 'COM4' port.<br>
<a href="week11/images/11.060_ftdi.jpg">
<img src="week11/images/11.060_ftdi.jpg" alt="" style="width:20%"></a>
&nbsp;&nbsp;
<a href="week11/images/11.061_ftdi.jpg">
<img src="week11/images/11.061_ftdi.jpg" alt="" style="width:30%"></a><br>
<br><br>
My simple Python code to read in the data from the ultrasonic input device : <br>
<?prettify linenums=true?>
<pre class="prettyprint linenums" style="margin-left:20px;margin-right: 20px;">
#
# Title: Ultrasonic_sensor.py
# Author: Lucas Lim
# Date Created: 2/4/2019
# Last Modified: 4/4/2019
# Purpose: To read data from Ultrasonic Sensor board
#
#import serial library
import serial
#open serial port
ser = serial.Serial('COM4', 9600)
# displayed serial port info
print (ser)
# displayed data read from from COM port
while True:
print ((ser.readline()).decode('utf-8'))
</pre>
<br>
<div class="gallery">
<a target="_blank" href="week16/images/">
<img src="week16/images/" alt="" width="600" height="400">
</a>
<div class="desc">1) ....
</div>
</div>
<div class="gallery">
<a target="_blank" href="week16/images/">
<img src="week16/images/" alt="" width="600" height="400">
</a>
<div class="desc">2)...
</div>
</div>
<!-- clear the float in abover gallery div -->
<div style="clear:both">
</div>
<div>
<h3>Files : </h3>
<p class="padding1">
My design in Fusion 360 :<br>
<a href="week7/assets/">My file</a><br>
</p>
</div>
<br><br>
<div>
<h3>References : </h3>
<p class="padding1">
<a href="https://">website</a><br>
</p>
</div>
<br>
<br>
<button onclick="topFunction()" id="myBtn" title="Go to the top"><i class="fa fa-arrow-up w3-margin-right"></i>&nbsp; &nbsp;To the top</button>
<script>
// When the user scrolls down 20px from the top of the document, show the button
window.onscroll = function() {scrollFunction()};
function scrollFunction() {
if (document.body.scrollTop > 20 || document.documentElement.scrollTop > 20) {
document.getElementById("myBtn").style.display = "block";
} else {
document.getElementById("myBtn").style.display = "none";
}
}
// When the user clicks on the button, scroll to the top of the document (w3school)
function topFunction() {
document.body.scrollTop = 0;
document.documentElement.scrollTop = 0;
}
</script>
</body>
<footer>
<div id="footer_info" class="footer1">
</div>
<br>
</footer>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="Lucas Lim's Learning Journey throughtout the six months Fab Academy 2019 Diploma course">
<meta name="author" content="Lucas Lim">
<title>Fab Academy 2019 - Lim Eng Hwa Lucas</title>
<!-- Load my style sheet -->
<link rel="stylesheet" type="text/css" href="style/mystyle.css">
<!-- Load Font Awesome Free Icons from online CDN -->
<!-- (home button, dropdown arrow) -->
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.7.2/css/all.css" integrity="sha384-fnmOCqbTlWIlj8LyTjo7mOUStjsKC4pOpQbqyi7RrhN7udi9RwhKkMHpvLbHG9Sr" crossorigin="anonymous">
<!-- Load jquery.js library for loading html files-->
<script src="scripts/jquery-1.4.2.js"></script>
<!-- Load the exercises, project html files into Top Navigation Bar -->
<script>
function menu() {
$('#assignments').load("assignments-menu.html");
$('#project').load("project-menu.html");
$('#footer_info').load("footer_info.html");
}
</script>
</head>
<body onload="menu()">
<!-- Top Navigation Bar -->
<div class="navbar">
<a class="activetag" href="index.html">
<!-- Home icon from Font Awesome -->
<font color="#3333cc"><i class="fa fa-home fa-lg"></i>
<b>Home&nbsp;&nbsp;</b></a></font>
<div class="navbar-right">
<a href="aboutme.html">About Me</a>
<div class="dropdown">
<button class="dropbtn">Assignments
<!-- Dropdown button from Font Awesome -->
<i class="fa fa-caret-down"></i>
</button>
<div class="dropdown-content">
<div id="assignments" class="dropdown-menu">
</div>
</div>
</div>
<div class="dropdown">
<button class="dropbtn">Final Project
<!-- Dropdown button from Font Awesome -->
<i class="fa fa-caret-down"></i>
</button>
<div class="dropdown-content">
<div id="project" class="dropdown-menu">
</div>
</div>
</div>
<a href="contactme.html">Contact</a>
</div>
</div>
<div class="padding3" style="background-color: #f1f1f1;">
<div class="column1">
<img src="aboutme/images/fablabsp_color.png" width="70%">
</div>
<div class="column2">
<font color="grey"><b>Fab Academy 2019 - Lucas Lim</b></font><br>
<span class="homepg-title">
<b><i>17. Machine Design</i></b></span><br>
</div>
</div>
<br>
<div>
<h3>Assignment :</h3>
<p>
<i>
<ul>
Group assignment:
<li>actuate and automate your machine</li>
<li>document the group project and your individual contribution</li>
</ul>
</i>
</p>
</div>
<br>
<div>
<h3>Work in Progress...</h3>
<p class="padding1">
Last few weeks I been falling sick as well as had a busy work schedule filled with meetings and tasks. So I not able to complete my Machine Building on time...
</p>
</div>
<br>
<div>
<h2>Components to build 'eggbot' Machine</h2>
<p class="padding1">
Electronics needed :<br>
1. Arduino Uno board<br>
2. <a hred="https://www.pololu.com/product/1182">Polulu A4988</a> stepper motor drivers<br>
3. <a hred="https://www.amazon.com/CanaKit-Stepper-Motor-with-Cable/dp/B004G51AZ4/ref=sr_1_6?ie=UTF8&qid=1405528008&sr=8-6&keywords=nema+17+stepper">2 NEMA 17 stepper motors</a><br>
4. <a hred="https://www.adafruit.com/product/169">Micro sized servo motor</a><br>
5. 5V Power adaptor<br>
6. Wire<br>
<br>
Other material/parts needed :<br>
7. <a hred="https://www.amazon.com/Amico-320mm-Stainless-Thread-Silver/dp/B00B0Q3ESS/ref=sr_1_3?s=industrial&ie=UTF8&qid=1405528276&sr=1-3&keywords=threaded+rod+m8">8mm threaded rod</a><br>
8. 9 6-32 screws/nuts<br>
9. 8 M3 screws<br>
10. Plywood<br>
<br>
Drawing tool :<br>
11. Permanent marker that make fine stroke <br>
Material :<br>
12. Small spherical objects (holiday ornaments, egg, ping pong ball, golf ball, light bulb, etc...)<br>
PS : For my machine building, I will just focus small spherical objects like the size of a chicken egg.<br>
</p>
</div>
<br>
<div>
<h3>Work in Progress...</h3>
<p class="padding1">
A mock-up model :
<br>
<a href="week17/images/17.001.mock_up.jpg">
<img src="week17/images/17.001.mock_up.jpg" alt="" style="width:40%"></a>
<br><br>
</p>
</div>
<br>
<!--
<div class="gallery">
<a target="_blank" href="week17/images/">
<img src="week17/images/" alt="" width="600" height="400">
</a>
<div class="desc">1) ....
</div>
</div>
<div class="gallery">
<a target="_blank" href="week17/images/">
<img src="week17/images/" alt="" width="600" height="400">
</a>
<div class="desc">2)...
</div>
</div>
<! -- clear the float in abover gallery div -->
<div style="clear:both">
</div>
<div>
<h3>Files : </h3>
<p class="padding1">
My design in Fusion 360 :<br>
<a href="week7/assets/">My file</a><br>
</p>
</div>
<br><br>
<div>
<h3>References : </h3>
<p class="padding1">
<a href="https://">website</a><br>
</p>
</div>
<br>
<br>
<button onclick="topFunction()" id="myBtn" title="Go to the top"><i class="fa fa-arrow-up w3-margin-right"></i>&nbsp; &nbsp;To the top</button>
<script>
// When the user scrolls down 20px from the top of the document, show the button
window.onscroll = function() {scrollFunction()};
function scrollFunction() {
if (document.body.scrollTop > 20 || document.documentElement.scrollTop > 20) {
document.getElementById("myBtn").style.display = "block";
} else {
document.getElementById("myBtn").style.display = "none";
}
}
// When the user clicks on the button, scroll to the top of the document (w3school)
function topFunction() {
document.body.scrollTop = 0;
document.documentElement.scrollTop = 0;
}
</script>
</body>
<footer>
<div id="footer_info" class="footer1">
</div>
<br>
</footer>
</html>
This diff is collapsed.