Wednesday, December 27, 2017

Gas-powered waterjet cutter (and other project updates)



Build a capable waterjet cutter from a commercial pressure washer.

Sources: 
Cutting head - https://www.accustream.com/waterjet-parts/accustream/a2/a2-cutting-head/12272.html

Orifice - https://www.accustream.com/waterjet-parts/accustream/accustream-orifices-nozzles/ruby-diamond-orifices/11007-XXX.html

Mixing tube (nozzle) - https://www.accustream.com/waterjet-parts/accustream/accustream-orifices-nozzles/nozzles/12781-045-30.html

Pressure washer - https://www.amazon.com/Excell-EPW2123100-Powered-Pressure-Washer/dp/B01MZEIYM7

Pressure washer hose coupling (for brazing into cutting head) - https://www.amazon.com/gp/product/B01MXW4GG9/ref=oh_aui_search_detailpage?ie=UTF8&psc=1

eBay CNC milling (eg) - https://www.ebay.com/itm/USB-CNC-ROUTER-ENGRAVER-ENGRAVING-CUTTING-3-AXIS-3040T-300X400MM-MACHINE-MILLING/272920186416?epid=21006871220

Applied Science on Patreon - https://www.patreon.com/AppliedScience

Saturday, November 25, 2017

Glass engineering - designing and making photochromic glass



How to make small batches of specialty glass with minimal equipment.

Good overview glass engineering book from 1920 (how to choose ingredients) : http://www.wallace-venable.name/Glass/bastow_American_Glass_Practice.pdf


"5mW" *nudge-wink*   405nm laser pointer: https://www.ebay.com/itm/5MW-405nm-High-Powerful-Blue-Voilet-Purple-Laser-Pointer-Pen-Lazer-Beam-Light/381987406125

Alumina melting dish on eBay: https://www.ebay.com/itm/Crucibles-Melting-Dishes-Ceramic-4-Size-Casting-Torch-Melt-Jewelry-Gold-Silver/291595276663

Source of kiln paper, mold release, molds, glass fusing supplies: https://www.delphiglass.com/

Paragon Quickfire kiln:  https://www.sheffield-pottery.com/PARAGON-QUIKFIRE-6-KILN-p/pqf6.htm

Case of 12 insulating fire bricks:  https://www.ebay.com/itm/IFB-Thermal-Ceramics-K26-2-5-12-pk/130342021835

Graphite mold:  https://www.ebay.com/itm/5-in-1-Gold-Melting-Graphite-Ingot-Casting-Refining-Scrap-Bar-Coin-Combo-Mold/321838368964

Relevant patents for photochromic recipes:  https://docs.google.com/viewer?url=patentimages.storage.googleapis.com/pdfs/US2515936.pdf

https://docs.google.com/viewer?url=patentimages.storage.googleapis.com/pdfs/US3548060.pdf

https://patentimages.storage.googleapis.com/b1/76/10/d4bd570c1a161c/US4374931.pdf

https://patentimages.storage.googleapis.com/26/71/a3/481dc009490fe6/US2515275.pdf

https://patentimages.storage.googleapis.com/a1/cf/ef/a11d9037375914/US2684911.pdf

https://patentimages.storage.googleapis.com/0c/b0/d2/d53ec9e6fd478a/US3548060.pdf

https://patentimages.storage.googleapis.com/3d/31/3b/0b3bc6c18b7ef3/US3419370.pdf



Applied Science on Patreon:  https://www.patreon.com/AppliedScience

Sunday, October 29, 2017

Saturday, July 1, 2017

World's smallest lightbulb flasher? Flashing Light Prize 2017




I built an extremely small lightbulb flasher and describe the design process and challenges. This video is free for Patreon subscribers, and if I win the contest prize, I will donate the winnings to a STEM education charity.

2017 Flashing Light Prize: https://www.flashinglightprize.com/

Source of micro light bulbs: http://cir-kitconcepts.com/shop/

Single Schmitt inverter: https://www.digikey.com/product-detai...

The SR416 cell is the smallest primary power source available: http://www.watchbatteries-usa.com/siz...

Spot Welder: https://www.powerstream.com/spot-weld...

Big thanks to Tektronix for very useful test gear. Much appreciated!

Applied Science on Patreon: https://www.patreon.com/AppliedScience

Monday, May 29, 2017

Waterjet cutter built with a cheap pressure washer



Building an abrasive waterjet cutter with a $150 pressure washer.

Water orifice, mixing tube (nozzle), cutting head, high pressure fittings, valve: https://www.accustream.com/

80 grit garnet abrasive - ebay
eg http://www.ebay.com/itm/40-LBS-Garnet-80-grit-coarse-med-sand-blasting-abrasive-Fast-Cutting-Media-/272599344178

Sun Joe pressure washer: https://www.amazon.com/Joe-SPX3000-Pressure-14-5-Amp-Electric/dp/B00CPGMUXW

Pressure gauge - https://www.mcmaster.com/#4053K15

Good waterjet background and design info: https://wardjet.com/waterjet/university/nozzle-orifice

Good selection of higher-end pressure washers: https://www.pressurewashersdirect.com/

Wikipedia waterjet cutter (diagram image source): https://en.wikipedia.org/wiki/Water_jet_cutter


Support more Applied Science videos: https://www.patreon.com/AppliedScience

Thursday, March 23, 2017

T-shirts available now

Hello!  I have re-launched the Applied Science T-shirt campaign on Teepspring.  It will end in just a few days, but will re-launch after that, and be active for at least two weeks.  These shirts are being sold at-cost -- thanks so much for your support!

https://teespring.com/AppliedScience_youtube


Monday, February 20, 2017


 I show how to collect detailed CAN bus data from a Tesla Model S, and display it in the car's own web browser!

Complete Raspberry Pi with CAN bus shield and 12V buck converter: http://copperhilltech.com/raspberry-pi-3-system-with-can-bus-interface/

Tesla diagnostic connector: https://www.panjo.com/buy/tesla-diagnostic-cable-for-ms-mx-sept-2015-and-up-bare-wire-version-308125

RPi CAN bus tutorial: http://www.cowfishstudios.com/blog/canned-pi-part1

Get node.js installed on the RPi: http://thisdavej.com/beginners-guide-to-installing-node-js-on-a-raspberry-pi/

I used socket.io, which is a module that installs into node.js: https://www.npmjs.com/package/socket.io

Diagnostic connector pinout (scroll through the images):
http://store.evtv.me/proddetail.php?prod=TeslaCANKit





Tesla CAN bus reverse engineering: https://skie.net/skynet/downloads

Basic sequence to setup the server on the Pi:
sudo ip link set can0 type can bitrate 500000 listen-only on
sudo ip link set can0 up

candump -cae can0,0:0,#FFFFFFFF

candump -cae can0,0:0,#FFFFFFFF | grep 106 | awk -Winteractive '{ print $10}' | node app.js

I will post the node.js code on my blog:


Support Applied Science on Patreon:
https://www.patreon.com/AppliedScience


app.js:

var readline = require('readline');
var rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout,
  terminal: false
});
pipedata = '';
rl.on('line', function(line){
    console.log(line);
pipedata = line;
});

var http = require('http'),
    fs = require('fs'),
    // NEVER use a Sync function except at start-up!
    index = fs.readFileSync(__dirname + '/index.html');

// Send index.html to all requests
var app = http.createServer(function(req, res) {
    res.writeHead(200, {'Content-Type': 'text/html'});
    res.end(index);
});

// Socket.io server listens to our app
var io = require('socket.io').listen(app);

// Send current time to all connected clients
function sendTime() {
//    io.emit('time', { time: new Date().toJSON() });
    io.emit('time', pipedata);
}

// Send current time every 10 secs
setInterval(sendTime, 100);

// Emit welcome message on connection
io.on('connection', function(socket) {
    // Use socket to communicate with this particular client only, sending it it's own id
    socket.emit('welcome', { message: 'Welcome!', id: socket.id });

    socket.on('i am client', console.log);
});

app.listen(8080);


index.html:


<!doctype html>

<html>

    <head>

        <script src='/socket.io/socket.io.js'></script>

        <script>

            var socket = io();



            socket.on('welcome', function(data) {

                addMessage(data.message);



                // Respond with a message including this clients' id sent from the server

                socket.emit('i am client', {data: 'foo!', id: data.id});

            });

            socket.on('time', function(data) {

                addMessage(data);

            });

            socket.on('error', console.error.bind(console));

            socket.on('message', console.log.bind(console));



            function addMessage(message) {

              //  var text = document.createTextNode(message);

                  document.getElementById('messages').textContent = message;

        //     el = document.createElement('li'),

               //     messages = document.getElementById('messages');



              //  el.appendChild(text);

              //  messages.appendChild(el);

            }

        </script>



<style>

p.sansserif { font-family: Arial, Helvtica, sans-serif; font-size:300%;}

</style>



    </head>

    <body>

        <p class = "sansserif" id='messages'>Hello</p>

    </body>

</html>




Monday, January 2, 2017

Camera movement and dolly zoom with Chronos high-speed camera





High speed video with Chronos 1.4 camera movement and dolly zoom effect.

Big servo motor:  https://www.teknic.com/products/clearpath-brushless-dc-servo-motors/

Small servo motor: https://www.kickstarter.com/projects/tropicallabs/mechaduino-powerful-open-source-industrial-servo-m

Ball-joint mount: https://www.amazon.com/VideoSecu-Univaersal-Satellite-Speaker-Bracket/dp/B005BV0FHG/

Chronos high-speed camera:  https://www.kickstarter.com/projects/1714585446/chronos-14-high-speed-camera

Slow mo music:  "Dewdrop Fantasy" Kevin MacLeod (incompetech.com)
Licensed under Creative Commons: By Attribution 3.0 License
http://creativecommons.org/licenses/by/3.0/