Skip to content
Snippets Groups Projects
index.html 16.5 KiB
Newer Older
unknown's avatar
unknown committed
<!DOCTYPE html>
<html lang="en">
Filippos Tourlomousis's avatar
Filippos Tourlomousis committed
<head>
unknown's avatar
unknown committed
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css" integrity="sha384-/Y6pD6FV/Vv2HJnA6t+vslU6fwYXjCFtcEpHbNJ0lyAFsXTsjBbfaDjzALeQsN6M" crossorigin="anonymous">

  <title>Rheoprinter-Cover</title>
Filippos Tourlomousis's avatar
Filippos Tourlomousis committed
</head>

<body>

unknown's avatar
unknown committed
	<div class="container">
unknown's avatar
unknown committed
		<h2>Table of Contents</h2>
			<p><a href="#TC1"><h3>1. Background</h3> </a></p>
			<p><a href="#TC1.1"><h4>1.1 Motivation & Initial Project Idea: "A Desktop Rheometer?"</h4> </a></p>
			<p><a href="#TC1.2"><h4>1.2 The Science of Rheology</h4> </a></p>
			<p><a href="#TC1.3"><h4>1.3 Rheometers - Operating Principles</h4> </a></p>
			<p><a href="#TC1.4"><h4>1.4 Neil: "Do you actually need classical rheometry to achieve what you want?"</h4> </a></p>
unknown's avatar
unknown committed
			<p><a href="#TC2"><h3>2. Proposed System: "The Rheoprinter"</h3></a></p>
			<p><a href="#TC2.1"><h4>2.1 The Nelder-Mead Algorithm</h4> </a></p>
unknown's avatar
unknown committed
			<p><a href="#TC3"><h3>3. Design </h3></a></p>
unknown's avatar
unknown committed
			<p><a href="#TC4"><h3>4. Rapid Prototyping</h3></a></p>
			<p><a href="#TC4.1"><h4>4.1 System Modules</h4> </a></p>
			<p><a href="#TC4.2"><h4>4.2 Final System</h4> </a></p>
unknown's avatar
unknown committed
			<p><a href="#TC5"><h3>5. Test</h3></a></p>
			<p><a href="#TC5.1"><h4>5.1 Motion Testing</h4></a></p>
			<p><a href="#TC5.2"><h4>5.2 Challenges & Next Steps</h4></a></p>
unknown's avatar
unknown committed
		<h3 id="TC1"> 1. Background</h3>
		<h4 id="TC1.1"> 1.1 Motivation & Initial Project Idea: "A Desktop Rheometer?"</h4>
unknown's avatar
unknown committed
			<p class="lead text-justify"> In this project we aim to build a system that "learns" optimum printability
				conditions on the fly for materials that are primarily utilized in additive manufacturing (AM). The
				micro-extrusion system measures printability using computer vision and searches for optimum machine
				parameters using optimization algorithms. Both tasks are happening real-time allowing the system to be
				both a measurement and a printing device in parallel. With this strategy, we introduce "printability"
				as an emergent material property that can be efficiently measured and not derived through time-consuming
				and trial & error parametric studies following classical rheological measurements. Such systems could
				potentially accelerate the development of novel materials for a wide range of applications.
			</p>
unknown's avatar
unknown committed
			<ul class="list-group lead text-center">
				<li class="list-group-item">Material Measurements for the Masses</li>
				<li class="list-group-item">Understanding the Rheology of Complex Fluids</li>	
			</ul>
			<br>
unknown's avatar
unknown committed
			<p class="lead text-center"> Transforming a peptide gel (99% water) into a yield-stress material for 3D printing.</p>
unknown's avatar
unknown committed
			<img src="images/yield-stress.jpg" class="img-thumbnail" width=50%> 
			<br>
			<br>
unknown's avatar
unknown committed
			<ul class="list-group lead text-justify">
unknown's avatar
unknown committed
				<li class="list-group-item"><b>"YIELD STRESS":</b> An ever increasing viscosity as the shear rate
					approaches zero, i.e. does not flow/ solid-like when stationary</li>
				<li class="list-group-item"><b>"ZERO-SHEAR VISCOSITY":</b> The viscosity plateau's as the shear rate
					approaches zero, i.e. flows/ liquid-like when stationary</li>
unknown's avatar
unknown committed
			</ul>
unknown's avatar
unknown committed
			<hr>
unknown's avatar
unknown committed
		<h4 id="TC1.2"> 1.2 The Science of Rheology</h4>
			
			<br>
			<br>
			<br>
			<hr>
unknown's avatar
unknown committed
		<h4 id="TC1.3"> 1.3 Rheometers - Operating Principles</h4>
			<br>
			<br>
			<br>
unknown's avatar
unknown committed
			<p class="lead text-center"> Transforming a peptide gel (99% water) into a yield-stress material for 3D printing.</p>
unknown's avatar
unknown committed
			<img src="images/TA.jpg" class="img-thumbnail" width=50%> 
			<br>
unknown's avatar
unknown committed
			<p class="lead text-center"> The Instron Capillary Rheometer.</p>
			<img src = 'images/capillary-rheometer.jpg' class="img-thumbnail" width=30%>
			<img src="images/INSTRONnew.jpg" class="img-thumbnail" width=30% height="30%"> 
			<br>
unknown's avatar
unknown committed
			<p class="lead text-center">The measured qunatities (angular deformation and torque) are transferred into a
				material quantity (stress, strain, viscosity, etc.)</p>
unknown's avatar
unknown committed
			<p class="lead text-center"> Instrument specific measured quantities are used to calculate material-specific
				parameters.</p>
unknown's avatar
unknown committed
			<img src="images/measured-calculated.jpg" class="img-thumbnail" width=50% height="50%">
unknown's avatar
unknown committed
			<p class="lead text-center"><b>Fluid Dynamics of Rotational Rheometry</b></p>
			<p class="lead text-center"> Working Equations for rotational rheometers with <b><i>parallel plate geometry</i>.</p>
			<img src="images/parallel-plate-geometry.jpg" class="img-thumbnail" width=50% height="50%">
			<br>
unknown's avatar
unknown committed
			<p class="lead text-center">Thus, by varying the shear rate and measuring the change in torque, the viscosity
				may be determined explicitly.</p>
unknown's avatar
unknown committed
			<p class="lead text-center"><b> Notes on Experimental Procedures:</b></p>
	
unknown's avatar
unknown committed
			<p class="lead text-justify">The most important thing is the fundamental resolution of the instrument itself
				since this will dictate our primary measurements. Stress and strain are not measured directly. Important
				assumptions are required ot convert primary measurements to material functions. You can only measure certain
				dynamic ranges of torque, displacement and frequencies. You have resolution limits in either of these quantities
				you can propagate through to the resolution o fthe viscosity that you can measure.</p>
unknown's avatar
unknown committed
			<ul class="list-group lead text-justify">
				<li class="list-group-item">Resolution/range of measured load and displacement</li>
				<li class="list-group-item">Instrument inertia (if load and displacement are measured on same boundary)</li>	
				<li class="list-group-item">Fluid inertia and secondary flows</li>
			</ul>
unknown's avatar
unknown committed
		<h4 id="#TC1.4"> 1.4 Neil: "Do you actually need classical rheometry to achieve what you want?"</h3> 
			<br>
			<br>
			<br>
unknown's avatar
unknown committed
			<hr>
unknown's avatar
unknown committed
		<h3 id="TC2"> 2. Proposed System: "The Rheoprinter"</h3>
		<h4 id="TC2.1"> 2.1 Nelder-Mead Algorithm</h3>
			<br>
			<br>
			<br>
unknown's avatar
unknown committed
			<hr>
		
		<h3 id="TC3"> 3. Design</h3>
			<br>
			<br>
			<br>

			<hr>

		<h3 id="TC4"> 4. Rapid Prototyping</h3>
unknown's avatar
unknown committed
			<br>
unknown's avatar
unknown committed
		<h4 id="TC4.1"> 4.1 System Modules</h4>
unknown's avatar
unknown committed
			<p class="lead text-justify">
				<br>
				<b>Frame Components</b>
				<br><br>
				<img src="images/frame-components.jpg" class="rounded mx-auto d-block" width="80%" height="">
				<br>
				<a href="http://fab.cba.mit.edu/classes/863.18/CBA/people/filippos/link/week-8.html">CNC Machining</a>
				<br>
				<br>
			</p>
unknown's avatar
unknown committed
			<br>
unknown's avatar
unknown committed

unknown's avatar
unknown committed
			<p class="lead text-center"> <b>Module I: Material Head</b></p>
			<p class="lead text-justify">For controlling the extrusion rate, I decided to move on with pneumatic extrusion.
				The reason about that is that I want to know the exact value of the entrance pressure applied during each
				printing condition. By taking the difference of the capillary pressure that I will potentially measure at
				the lower part of the syringe barrel using a pressure sensor and the  entrance pressure , I am going to be
				able to track the pressure difference at the material head during printing . With a little a bit of mathematics,
				I will be able to back out the rheological properties of the candidate material inside the extrusion head during
				printing. The same task could be realized with mechanical extrusion using a lead-screw-driven syringe pump.
				However, getting the entrance pressure would require a load cell, which right now I don't have the time to
				learn how to design one.
			</p>

			<p class="lead text-justify"> Moving on, I configured and bought an
				<a href="http://www.smcpneumatic.com//ITV1050-31N2CS4.html">
unknown's avatar
unknown committed
				electro-pneumatic pressure regulator</a>, which controls air pressure steplessly in proportion to an
				electric signal. Specifically, when the input signal rises. the air supply solenoid valve (1) turns ON.
				Due to this, part of the supply pressure passes through the air supply solenoid valve (1) and changes to
				output pressure. This output pressure feeds back to the control circuit (4) via the pressure sensor (3).
				Here, pressure corrections continue until output pressure becomes proportional to the input signal,
				enabling output pressure that is proportional to the input signal.
			</p>

			<p class="lead text-center">Working Principle Diagram</p>
			<img src="images/pneumatic-work-principle-diagram.PNG" class="rounded mx-auto d-block" width="" height="">

			<p class="lead text-center">Block Diagram</p>
			<img src="images/pneumatic-block-diagram.PNG" class="rounded mx-auto d-block" width="" height="">
			<br>
unknown's avatar
unknown committed
			<br>
unknown's avatar
unknown committed

			<p class="lead text-justify">In addition to the regulator, I sourced a couple of NPT connectors, tubing and and
				a simple valve regulator to control the reference pressure coming from CBA's compressed air supply line.
				You can find specs and product numbers for SMC pneumatics from the picture below or the readme file in the
				main Gitlab project directory.
			</p>

			<p class="lead text-center">Pneumatic Assembly for Extrusion Rate Control</p>
			<img src="images/pneumatic-connection.PNG" class="rounded mx-auto d-block" width="" height="">
unknown's avatar
unknown committed
			<br>
unknown's avatar
unknown committed

			<p class="lead text-justify"> After assembling all the components and making sure that everything fits, I moved on
				to wire the regulator. Note that the wiring is model and configuration part number-specific. This  has to be done
				after reading the manual, which can be found <a href="http://www.smcpneumatics.com/pdfs/ITVop.PDF">HERE</a>.
				My regulator belongs to the ITV series models and has the following part number: <b>ITV1050-31N2CS4</b>.
				This corresponds to the following <a href="https://goo.gl/hxpiRW">specs</a>:
			</p>

			<img src="images/pneumatic-reg-specs.PNG" class = "rounded mx-auto d-block" width="80%">

			<p class="lead text-justify"> and the wiring directions extracted from teh operation manual are attached below:</p>

			<img src="images/pneumatic-wiring-A.PNG" class="rounded mx-auto d-block" width="70%">
			<img src="images/pneumatic-wiring-B.PNG" class="rounded mx-auto d-block" width="70%">
			<br>
			<hr>

			<p class="lead text-center"> <b>Module II: Light Box Printbed</b></p>
			<br>

			<p class="lead text-justify">
				The plan is that the candidate material will be printed on top of a light box that will snap-fit on the upper
				plate of the xy cartesian stage. The idea of a "light box printbed" came after significant problems
				caused in the computer vision algorithm by the reflections of the led arrays embedded in the usb
				camera itself. Bright circular spots of the LED bodies would appear on the acquired images resulting to
				erroneous segmentation of the printed fiber outline. Having an LED light box made from acrylic sheets and
				with LEDs strips attached on the bottom plate and covered with opal diffusers would allow equal distribution
				of light. Coupling this with an enclosure made from black acrylic sheets and covering the whole machine will
				provide reproducible light conditions on the printbed area independent of the experimentation time and
				the location of the machine.
			</p>

			<p class="lead text-justify">
				I found this awesome company called
				<a href="https://www.superbrightleds.com/moreinfo/flexible-led-strip-lights/led-strip-lights-12v-led-tape-light-with
				-lc2-connector-380-lumens-per-ft/1465/4339/">Super Brigh LEDs</a> for sourcing LED stripes that can provide
				cool white light and another company that sells <a href="http://www.leevalley.com/us/wood/page.aspx?p=71702&c=2">
				flash mount channels and opal diffusers</a> for housing my light sources.
			</p>

			<p class="lead text-justify">
				Couple of interesting videos that I found online related to light boxes:
				<ul class="list-group lead text-justify">
					<li class="list-group-item"><a href="https://www.instructables
					.com/id/DIY-Digital-Microscope/?utm_source=newsletter&utm_medium=email"><b>DIY microscope</b></a></li>
					<li class="list-group-item"><a href="https://www.instructables
					.com/id/Disassembling-a-CDDVD-reader-and-reusing-its-parts/"><b>Sourcing Motors from old PCs</b></a></li>
					<li class="list-group-item"><a href="https://www.youtube.com/watch?v=hNiTLH0tSpA"><b>DIY light
						box</b></a></li>
					<li class="list-group-item"><a href="https://www.instructables.com/id/How-to-Make-an-LED-Light-Box/"><b>DIY
						light box</b></a>
					</li>
				</ul>
			</p>

			<p>
				https://www.acmeplastics.com/acrylic-sheets
				https://www.acmeplastics.com/acrylic-sheets/acrylic-cast-white-sheet
				https://www.acmeplastics.com/acrylic-sheets/acrylic-p95-sheet
				https://www.engraving-supplies.com/acrylic-sheets/filter/cat/troglass-frosted/colour_group_top_layer/white
				/is_indoor/1.html

				https://www.engraving-supplies.com/acrylic-sheets/troglass-led.html
				https://www.acplasticsinc.com/products/2406-187-51x100-optix-ld-f
			</p>

			<br>
			<br>
			<br>
			<hr>
unknown's avatar
unknown committed

			<p class="lead text-center">XY - Cartesian Stage Assembly</p>

unknown's avatar
unknown committed
			<br>
unknown's avatar
unknown committed
			<p class="lead text-center">XY- Cartesian Stage Control</p>

			<p class="lead text-justify" >- created a jig/fixture to mount the motors and test the asynchronous operation for
				easiness.
unknown's avatar
unknown committed
			- started with BigEasy Driver where I soldered male header pins with spacing ...
unknown's avatar
unknown committed
			- soldered jumper wires (male to female) on the NEMA 17 motor cables
			here are some interesting links for building cables with Dupont Headers(we have all the accessories in the
                inventory):
unknown's avatar
unknown committed
			https://www.youtube.com/watch?v=c-pTsccCizA
			https://www.youtube.com/watch?v=qz9Ryos1_GY
			https://www.youtube.com/watch?v=N3zK9fzIPBo
unknown's avatar
unknown committed
			and a good inscrutable here:
unknown's avatar
unknown committed
			https://www.instructables.com/id/Fitting-Dupont-Connectors/


			- for cable management i will order sleeves and heat shrink tubes
			- downloaded Arduino and configured based on that:
			https://startingelectronics.org/software/arduino/installing-arduino-software-windows-10/
            - then started running examples and creating simple sketches from here:
            http://www.schmalzhaus.com/EasyDriver/Examples/EasyDriverExamples.html
            - Example 1:
            - Example 2:
            - Example 3:
unknown's avatar
unknown committed
            Install Accellstep library from this page:
unknown's avatar
unknown committed
            http://www.airspayce.com/mikem/arduino/AccelStepper/
            and based on this guide using the manual way of installation in libraries folder under the Documents/Arduino/
            http://www.airspayce.com/mikem/arduino/AccelStepper/
            Don't forget ot mention why you should the third party libraries there, because during Arduino Installation they
				might be deleted.
unknown's avatar
unknown committed
            - Example 4
            - Example 5
            http://bildr.org/2012/11/big-easy-driver-arduino/
             Interrupts
            Now I would like ot describe something which sounds that it would real simple but it turns out
unknown's avatar
unknown committed
            to be incredibly hard on something like the Arduino. Lets say we wanted to blind LED independently, concurrently
unknown's avatar
unknown committed
            at different rates.
            A good example is when we are working with multiple sensors like a GPS, which over time spits out serial data
            and if you are over here working on something else and that GPS piles up a bunch of data you are gonna
            overflow your buffer and you are going to be reading old stale corrupt incomplete data from teh serial
            port. So you need to have something like an interrupt so that every little bit you can ran out and get the data off of the serial
            port.
            Advanced Software Interrupts for Reading Serial Data
unknown's avatar
unknown committed
			</p>
unknown's avatar
unknown committed

			<hr>

		<h3 id="TC5"> 5. Test</h3>
		<h4 id="TC5.1"> 5.1 Motion Testing</h4>
			<div class="embed-responsive embed-responsive-16by9">
				<iframe class="embed-responsive-item" src="https://www.youtube.com/embed/aHv0sHrLXbQ"
						allowfullscreen></iframe>
			</div>
unknown's avatar
unknown committed
			<br>
			<br>

		<h4 id="TC5.2"> 5.2 Challenges & Nest Steps</h4>

			<p class="lead text-justify">
				<b>BIOPOLYMERS</b><br>
				<b>rheoprinter (materials processing with online metrology):</b>
				- controlled pneumatic extrusion<br>
				- pressure sensing<br>
				<b>high-throughput controlled "shake&bake" (material synthesis with online metrology)</b><br>
				- make 2nd end-effector for patterning
				<a href="https://tourlomousis.pages.cba.mit.edu/how-to-make-droplets/">material droplet reactors</a><br>
				- <a href="https://www.amazon.com/Hotplate-Magnetic-100-1500RPM-Scientific-Laboratory/dp/B01HQ0JPOI/ref=sr_1_20?s=industrial&ie=UTF8&qid=1541434220&sr=1-20&keywords=magnetic+mixer">parallelized
				hotplate magnetic stirring machine</a><br>

				<br>
				<br>

				<b>THERMOPLASTIC POLYMERS</b><br>
				- <a href="https://www.youtube.com/watch?v=ZKQ9QCnp4jI">extensional electro-rheometry (materials processing with online metrology)</a><br>
unknown's avatar
unknown committed
			</p>
unknown's avatar
unknown committed
	</div>