week_06.html 28.00 KiB
<!DOCTYPE html>
<html lang="en">
<head>
<!-- Basic Page Needs
================================================== -->
<meta charset="utf-8">
<!--[if IE]><meta http-equiv="x-ua-compatible" content="IE=9" /><![endif]-->
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>week_06 Electronics design</title>
<meta name="description" content="Your Description Here">
<meta name="keywords" content="FabLab Taipei,FabLab,Zihao Lin,FabLab SCU">
<meta name="author" content="Lin Zihao">
<!-- Favicons
================================================== -->
<link rel="shortcut icon" href="img/favicon.ico" type="image/x-icon">
<link rel="apple-touch-icon" href="img/apple-touch-icon.png">
<link rel="apple-touch-icon" sizes="72x72" href="img/apple-touch-icon-72x72.png">
<link rel="apple-touch-icon" sizes="114x114" href="img/apple-touch-icon-114x114.png">
<!-- Bootstrap -->
<link rel="stylesheet" type="text/css" href="css/bootstrap.css">
<link rel="stylesheet" type="text/css" href="fonts/font-awesome/css/font-awesome.css">
<!-- Slider
================================================== -->
<link href="css/owl.carousel.css" rel="stylesheet" media="screen">
<link href="css/owl.theme.css" rel="stylesheet" media="screen">
<!-- Stylesheet
================================================== -->
<link rel="stylesheet" type="text/css" href="css/style.css">
<link rel="stylesheet" type="text/css" href="css/responsive.css">
<script type="text/javascript" src="js/modernizr.custom.js"></script>
<!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->
</head>
<body>
<!-- Navigation
==========================================-->
<nav id="tf-menu" class="navbar navbar-default navbar-fixed-top">
<div class="container">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="index.html">Lin Zihao</a>
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav navbar-right">
<li><a href="index.html" class="page-scroll">Home</a></li>
<li><a href="Final Project.html" class="page-scroll">Final Project</a></li>
<li><a href="#tf-testimonials" class="page-scroll">Contact</a></li>
</ul>
</div><!-- /.navbar-collapse -->
</div><!-- /.container-fluid -->
</nav>
<!-- Home Page
==========================================-->
<div id="tf-home" class="text-center">
<div class="overlay">
<div class="content">
<h1><strong><span class="color">week_06</span></strong></h1>
<p class="lead"><strong>Electronics design</strong></p>
<a href="#tf-services" class="fa fa-angle-down page-scroll"></a>
</div>
</div>
</div>
<!-- Services Section
==========================================-->
<div id="tf-services">
<div class="container">
<div class="text-center">
<div class="section-title center" >
<h2><strong>Objectives</strong></h2>
<div class="line">
<hr>
</div>
</div>
</div>
<ul class="about-list" class="pull-left">
<li>
<span class="fa fa-dot-circle-o"></span>
<strong>1)</strong> - <em>Understand electronic schematic diagram and PCB board design.</em>
</li>
</ul>
<br />
<div class="text-center">
<div class="section-title center" >
<h2><strong>Assignments</strong></h2>
<div class="line">
<hr>
</div>
</div>
</div>
<ul class="about-list">
<li>
<span class="fa fa-dot-circle-o"></span>
<strong>1)</strong> - <em>Group project: use the test equipment in your lab to observe the operation of a microcontroller circuit board.</em>
</li>
<li>
<span class="fa fa-dot-circle-o"></span>
<strong>2)</strong> - <em>Individual project: redraw an echo hello-world board, add (at least) a button and LED (with current-limiting resistor) check the design rules, make it, and test it extra credit: simulate its operation.</em>
</li>
</ul>
<br />
<div class="text-center">
<div class="section-title center" >
<h2><strong>Generality </strong></h2>
<div class="line">
<hr>
</div>
</div>
</div>
<p>
① Resistor: Limits the flow of the electrons through a circuit. The resistance is measured in ohms Ω. And an important aspect that we have to look at is the tolerance: how accurate it is. Current(I) = Voltage (V)/Resistor (R).<br/>
② Capacitors: They store energy in an electric field and they can control voltage spikes (they “clean” circuits “noise”). They can be polarized and un-polarized. Capacity =Charge (Q)/Voltage (V).<br/>
③ Inductor: stores energy also but in a magnetic field.<br/>
④ Wire: allows the communication between programmer and the board.<br/>
⑤ Switch: this component allows you to control whether an electric circuit is opened or closed. They are very important for user interaction.<br/>
⑥ Resonator: Provide a clock signal to the circuit, it gives work frequency to the micro-controller.
⑦ Diodes: their main function is to control the direction of the current flow. They are directional components.<br/>
⑧ Transistors: A transistor is a semiconductor component that can either amplify or switch electronic signals and electrical power. A voltage or current applied to one pair of the transistor's terminals controls the current through another pair of terminals.<br/>
⑨ Regulator: It has a capacitor after. It establishes the voltage that you will have after it. If you have a higher voltage, 5V for example, you can regulate what it goes out, 3.3V for example.<br/>
⑩ Micro-controller: Brain of the PCB, each pin could have different functionalities, which would be defined later with Fuses.
</p>
<div class="text-center">
<div class="section-title center" >
<h2><strong>Individual project</strong></h2>
<div class="line">
<hr>
</div>
</div>
</div>
<p>I will be started with basic electronics. The default hello world is here. I needed to add a push button and an LED to this existing design and resistor to ensure only the right amount of current passes through the LED. The Microcontroller (Attiny44) already has an 8Mhz internal clock. But I are adding an extra 20Mhz resonator for more accuracy and precise clock applications.</p>
<p style="text-align:center"><img src="img/week_06/Picture01.jpg" class="img-responsive" alt="..."></p><br/>
<div class="text-center">
<div class="section-title center" >
<h4><strong>Software of Eagle</strong></h4>
<div class="line">
<hr>
</div>
</div>
</div>
<p>
I choose the Autodesk Eagle PCB design software which is free for students and startups. This software is highly recommended and easy to use. Because of that the schematic can be realized in parallel to the board, so all the components that are inserted in the schematic are also inserted “physically” in the board. It can be downloaded from <a href="https://www.autodesk.com/products/eagle/overview">this website</a>.
</p>
<p style="text-align:center"><img src="img/week_06/Picture02.jpg" class="img-responsive" alt="..."></p><br/>
<div class="text-center">
<div class="section-title center" >
<h4><strong>Redraw an echo hello-world board</strong></h4>
</div>
</div>
<p>① First, I had to downloaded the file of <a href="https://gitlab.fabcloud.org/pub/libraries/electronics">Eagle Library</a> and loaded it into the control panel window. This library contains the information of some components which include in addition to the technical characteristics, also the physical dimensions and the dimensions of the footprints.</p>
<p style="text-align:center"><img src="img/week_06/Picture03.jpg" class="img-responsive" alt="..."></p><br/>
<p>Save it in the Eagle’s library folder.</p>
<p style="text-align:center"><img src="img/week_06/Picture04.jpg" class="img-responsive" alt="..."></p><br/>
<p>
② Setp2: Using add tool to add components to my schematic. In the propped-up window, search for the require component and click OK.<br />
These are the components that I have used:<br />
- ATTiny44-SSU, micro-controller;<br />
- ACRISP, 2x3 header;<br />
- CAP UNPOLARIZEDFAB, C1206FAB,1uf capacitor;<br />
- RESONATOR, 20MHz crystal;<br />
- LEDFAB1206, one green for button; <br />
- RES-US1206FAB, resistors: (2) 499 Ω, (2) 10k Ω;<br />
- FTDI-SMD-HEADER, 6-pin header;<br />
- SWITCH 6mm*6mm button; <br />
</p>
<div class="row">
<div class="col-sm-6 col-md-3 col-lg-3 branding">
<div class="portfolio-item">
<img src="img/week_06/Picture05.jpg" class="img-responsive" alt="...">
</div>
</div>
<div class="col-sm-6 col-md-3 col-lg-3 branding">
<div class="portfolio-item">
<img src="img/week_06/Picture06.jpg" class="img-responsive" alt="...">
</div>
</div>
<div class="col-sm-6 col-md-3 col-lg-3 branding">
<div class="portfolio-item">
<img src="img/week_06/Picture07.jpg" class="img-responsive" alt="...">
</div>
</div>
<div class="col-sm-6 col-md-3 col-lg-3 branding">
<div class="portfolio-item">
<img src="img/week_06/Picture08.jpg" class="img-responsive" alt="...">
</div>
</div>
</div>
<div class="row">
<div class="col-sm-6 col-md-3 col-lg-3 branding">
<div class="portfolio-item">
<img src="img/week_06/Picture09.jpg" class="img-responsive" alt="...">
</div>
</div>
<div class="col-sm-6 col-md-3 col-lg-3 branding">
<div class="portfolio-item">
<img src="img/week_06/Picture10.jpg" class="img-responsive" alt="...">
</div>
</div>
<div class="col-sm-6 col-md-3 col-lg-3 branding">
<div class="portfolio-item">
<img src="img/week_06/Picture11.jpg" class="img-responsive" alt="...">
</div>
</div>
<div class="col-sm-6 col-md-3 col-lg-3 branding">
<div class="portfolio-item">
<img src="img/week_06/Picture12.jpg" class="img-responsive" alt="...">
</div>
</div>
</div>
<div class="row">
<div class="col-sm-6 col-md-3 col-lg-3 branding">
<div class="portfolio-item">
<img src="img/week_06/Picture13.jpg" class="img-responsive" alt="...">
</div>
</div>
</div>
<p>Setp3: Using the move and rotate tools to place them at the correct position. And then wire all of your schematic symbols together with nets and add values and part.</p>
<p style="text-align:center"><img src="img/week_06/Picture14.jpg" class="img-responsive" alt="..."></p><br/>
<div class="text-center">
<div class="section-title center" >
<h4><strong>PCB of Board</strong></h4>
</div>
</div>
<p>① Click on sch/brd tool to create a new board form the schematic.</p>
<p style="text-align:center"><img src="img/week_06/Picture15.jpg" class="img-responsive" alt="..."></p><br/>
<p style="text-align:center"><img src="img/week_06/Picture16.jpg" class="img-responsive" alt="..."></p><br/>
<p>② Using the move, align and rotate tools to place the components on the board. Then set the design rules (size of the traces, clearance etc.). I used the rules of <a href="https://gitlab.fabcloud.org/pub/libraries/electronics">fab rules</a>.</p>
<p style="text-align:center"><img src="img/week_06/Picture17.jpg" class="img-responsive" alt="..."></p><br/>
<p style="text-align:center"><img src="img/week_06/Picture18.jpg" class="img-responsive" alt="..."></p><br/>
<p>③ I have made three tries before obtaining a Ill-connected PCB. First, I had use the autorouter main setup tool. But the board of PCB have two layers, I didn’t know why. Then I have to find a way to s this problem on the Internet. </p>
<p style="text-align:center"><img src="img/week_06/Picture19.jpg" class="img-responsive" alt="..."></p><br/>
<p>Then I set the default as following picture. But it still fails.</p>
<p style="text-align:center"><img src="img/week_06/Picture20.jpg" class="img-responsive" alt="..."></p><br/>
<p>The third times, I fund that I set the Bottom layer was auto. Then I set the default as following picture.</p>
<p style="text-align:center"><img src="img/week_06/Picture21.jpg" class="img-responsive" alt="..."></p><br/>
<p>Final board</p>
<p style="text-align:center"><img src="img/week_06/Picture22.jpg" class="img-responsive" alt="..."></p><br/>
<p>④ Run the ERC and DRC checks for any error. (Tools –> ERC/DRC).</p>
<p style="text-align:center"><img src="img/week_06/Picture23.jpg" class="img-responsive" alt="..."></p><br/>
<p style="text-align:center"><img src="img/week_06/Picture24.jpg" class="img-responsive" alt="..."></p><br/>
<p>⑤ Hide all layers except top one(this has the traces).</p>
<p style="text-align:center"><img src="img/week_06/Picture25.jpg" class="img-responsive" alt="..."></p><br/>
<p>⑥ Export the file as PNG image.(File –> Export –> Image)</p>
<p style="text-align:center"><img src="img/week_06/Picture26.jpg" class="img-responsive" alt="..."></p><br/>
<p style="text-align:center"><img src="img/week_06/Picture29.jpg" class="img-responsive" alt="..."></p><br/>
<div class="text-center">
<div class="section-title center" >
<h4><strong>Milling and Soldering</strong></h4>
</div>
</div>
<p>① I milling the sacrificial layer with a 10mm endmill to ensure the plane level.</p>
<p style="text-align:center"><img src="img/week_06/Picture27.jpg" class="img-responsive" alt="..."></p><br/>
<p>② Used <a href="http://fabmodules.org">Fab Modules</a>. Then I imported the traces image, the image is in PNG format, with only black and white lines. I Choose the output format, as G-codes (.NC). Then, I choose the process, which is milling the PCB traces (1/64).</p>
<p style="text-align:center"><img src="img/week_06/Picture28.jpg" class="img-responsive" alt="..."></p><br/>
<p>
③ Use software of CIMCO and software of Vericut to check whether the G-codes is correct. But first time, I forgot the difference between the imperial system and the metric system. So, I deleted the code of G20. So, it is too small.<br />
<iframe width="864" height="425" src="https://www.youtube.com/embed/r2o2y-aPYWA" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe><br/>
<br/>
<br/>
<iframe width="864" height="425" src="https://www.youtube.com/embed/S32Rh2RTXu4" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe><br/>
④ I fix the PCB to the milling machine plate use double side tape. I need to make sure that tape layer is smooth with no wrinkles. The surface of the material must be parallel to the x and y-axis of the machine..<br />
⑤ I need measure the workpiece coordinate system, that is setting the origin of X axial, Y axial and Z axial(the method of try cutting).<br />
⑥ Milling.
</p>
<p style="text-align:center"><img src="img/week_06/Picture30.jpg" class="img-responsive" alt="..."></p><br/>
<p>⑦ Once I had my milled PCB, I Int to work stuffing it with the components, starting with the ATtiny 44 pins. I found that useful to used the magnifying glass while soldering the components. </p>
<p style="text-align:center"><img src="img/week_06/Picture31.jpg" class="img-responsive" alt="..."></p><br/>
<p style="text-align:center"><img src="img/week_06/Picture32.jpg" class="img-responsive" alt="..."></p><br/>
<div class="text-center">
<div class="section-title center" >
<h4><strong>Programing</strong></h4>
</div>
</div>
<p>
To test it physically we need to program it first. I have added a led with a button, so what are they going to do? I have to program it using Arduino IDE,<br/>
① Download Arduino software from <a href="https://www.arduino.cc/en/Main/Software">this website</a>.<br/>
② In the Internet, I found a tutorials in <a href="http://highlowtech.org/?p=1695">this website</a>. I can find a link to "install" ATtiny micro-controllers in Arduino libraries in Preferences.
</p>
<p style="text-align:center"><img src="img/week_06/Picture35.jpg" class="img-responsive" alt="..."></p><br/>
<p>③ Select, in Boards Manager attiny and install it. Then, in Tools (Herramientas) select ATtiny44 as processor and USBtinyIPS as programmer.</p>
<p style="text-align:center"><img src="img/week_06/Picture36.jpg" class="img-responsive" alt="..."></p><br/>
<p style="text-align:center"><img src="img/week_06/Picture37.jpg" class="img-responsive" alt="..."></p><br/>
<p>
④ Burn Bootloader ("Quemar Bootloader") to say to USBtinyISP and PCB to be programmed with Arduino.<br/>
⑤ See ATtiny scheme below to know each connection pin number in Arduino language. My scheme says that my INPUT (Button) is pin 2 and OUTPUT (Led) is pin 3.
</p>
<p style="text-align:center"><img src="img/week_06/Picture38.jpg" class="img-responsive" alt="..."></p><br/>
<p>⑥ Write the program taking in account these pins, and programing the code to the PCB board,.</p>
<p style="text-align:center"><img src="img/week_06/Picture39.jpg" class="img-responsive" alt="..."></p><br/>
<p>
⑦ Test it with Arduinos.<br/>
<iframe width="864" height="425" src="https://www.youtube.com/embed/xkzlScNXc5o" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe><br/>
</p>
<div class="text-center">
<div class="section-title center" >
<h2><strong>Group project</strong></h2>
<div class="line">
<hr>
</div>
</div>
</div>
<div class="text-center">
<div class="section-title center" >
<h4><strong>Digital Multimeter</strong></h4>
</div>
</div>
<p>
I test equipment in our lab to observe the operation of a micro-controller circuit board. With the digital multimeter I verified if each connector first of soldering the other components, to avoid burning them later, if it is not working Ill. Then, I use it to verify every connection pins and traces too, while I Ire soldering the other components. A digital multimeter (DMM) is a test tool used to measure two or more electrical values—principally voltage (volts), current (amps) and resistance (ohms). It is a standard diagnostic tool for technicians in the electrical/electronic industries.
</p>
<p style="text-align:center"><img src="img/week_06/Picture33.jpg" class="img-responsive" alt="..."></p><br/>
<p style="text-align:center"><img src="img/week_06/Picture34.jpg" class="img-responsive" alt="..."></p><br/>
<div class="text-center">
<div class="section-title center" >
<h2><strong>File Download</strong></h2>
<div class="line">
<hr>
</div>
</div>
</div>
<p> <a href="Files/week_06/boton_Hello_C_fablab.rar">boton_Hello_C_fablab</a> </p>
<p> <a href="Files/week_06/boton_Led.rar">boton_Led</a> </p>
<p> <a href="Files/week_06/Hello world 4.0.png">Hello world 4.0</a> </p>
<p> <a href="Files/week_06/Hello world 4.0-1.png">Hello world 4.0-1</a> </p>
<p> <a href="Files/week_06/hello world.brd">hello world.brd</a> </p>
<p> <a href="Files/week_06/hello world.sch">hello world.sch</a> </p>
</div>
</div>
<!-- Testimonials Section
==========================================-->
<div id="tf-testimonials" class="text-center">
<div class="overlay">
<div class="container">
<div class="section-title center">
<div class="section-title center">
<h2><strong>contact Me</strong></h2>
<div class="line">
<hr>
</div>
<div class="clearfix"></div>
<small><em>
Address: No.10, Kehua street, Wuhou District, Chengdu, Sichuan Province, China<br />
TEL: (028) 85406538 (+86)18981085882<br />
E-mail: linzihao@scuspark.com<br />
QQ: 386866966
</em></small>
</div>
<form>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label for="exampleInputEmail1">Email address</label>
<input type="email" class="form-control" id="exampleInputEmail1" placeholder="Enter email">
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label for="exampleInputPassword1">Password</label>
<input type="password" class="form-control" id="exampleInputPassword1" placeholder="Password">
</div>
</div>
</div>
<div class="form-group">
<label for="exampleInputEmail1">Message</label>
<textarea class="form-control" rows="3"></textarea>
</div>
<button type="submit" class="btn tf-btn btn-default">Submit</button>
</form>
</div>
</div>
</div>
</div>
<nav id="footer">
<div class="container">
<div class="pull-left fnav">
<p>Science Park of Sichuan University Co.Ltd. All rights reserved. © 2020. Designed by Lin Zihao</p>
</div>
<div class="pull-right fnav">
<ul class="footer-social">
<li><a href="https://www.facebook.com/zihao.lin.7399"><i class="fa fa-facebook"></i></a></li>
<li><a href="#"><i class="fa fa-dribbble"></i></a></li>
<li><a href="#"><i class="fa fa-google-plus"></i></a></li>
<li><a href="#"><i class="fa fa-twitter"></i></a></li>
</ul>
</div>
</div>
</nav>
<!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script type="text/javascript" src="js/jquery.1.11.1.js"></script>
<!-- Include all compiled plugins (below), or include individual files as needed -->
<script type="text/javascript" src="js/bootstrap.js"></script>
<script type="text/javascript" src="js/SmoothScroll.js"></script>
<script type="text/javascript" src="js/jquery.isotope.js"></script>
<script src="js/owl.carousel.js"></script>
<!-- Javascripts
================================================== -->
<script type="text/javascript" src="js/main.js"></script>
</body>
</html>