{ "cells": [ { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "

Build a Robot Manipulator with Pocket Science Lab

\n", "
\"Robotics
\n", "
\"FOSSAsia\"
\n", "

marcogg@marcogg.com

\n" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "
" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "

Learn the ways of open source robotics you must...

\n", "\n", "
\"yoda\"
" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "

Project Based Learning

" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "

What to learn?

\n", "
\"ik\"
" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "

How to learn?

\n", "
\"robot\"
" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "

What do we need?

" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "##         - Body\n", "##         - Interface\n", "##         - Sensors\n", "##         - Actuators\n", "##         - Brain" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "##         - Body -> Laser cut wood\n", "##         - Interface -> PSLab\n", "##         - Sensor (not this time)\n", "##         - Actuators -> Servo motors\n", "##         - Brain -> Laptop with Python" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "

The Body:

\n", "
\"mearm\"
" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "
\"Mearm
" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "

The Interface:

\n", "
\"PSLab\"
" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "
\"wtf\"
" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "
\"pslab\"\n", "\n", "

USB Powered Smartphone Extension Open Hardware Device for Open Science Experiments

" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "###         - Array of useful control and measurement tools\n", "###         - Can be accessed through:\n", "####            - PSLab Desktop app\n", "####            - Smartphone PSLab Android app\n", "####            - Your own apps\n", "###         - The integrated components can be used by pins" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "

Oscilloscope:

\n", "
\"oscilloscope\"
" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "

Power Source:

\n", "
\"Power
" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "

Multimeter:

\n", "
\"Multimeter\"
" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "

Wave Generator:

\n", "
\"Wave
" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "

Logic Analyzer:

\n", "
\"Logic
" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "
\"PSLab
\n", " " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "
\"PSLab
" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "

The sensors

\n", "

(not this time)

" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "
\"webcam\"
" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "
\"webcam\"
" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "

The actuators

\n", "

Servo motors

" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "
\"servo\"
" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "

The Brain

\n", "

Your laptop, your code!

" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "

https://github.com/fossasia/pslab-python

\n", "
\"pslab" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "/dev/ttyACM3 .yes. b'PSLab V5'\n", "Radio transceiver not installed/not found\n" ] } ], "source": [ "from PSL import sciencelab\n", "\n", "try:\n", " I = sciencelab.connect()\n", "except RuntimeError:\n", " print('Device is not connected');\n", " exit()" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "slideshow": { "slide_type": "-" } }, "outputs": [], "source": [ "I.servo4(90, 0, 0, 0)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "

And all of it is Open Source!

\n", "
\n", "
\"OMG!\"
" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "

Inverse Kinematics cpp code for mearm:

\n", "

https://github.com/phenoptix/me-arm-ik

\n", "
\"Robot
" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "

Let's get to work!

\n", "\"Chuck\n", "

Marco A. GutiƩrrez

\n", "

marcogg@marcogg.com

\n", "
\"FOSSAsia\"
" ] } ], "metadata": { "celltoolbar": "Slideshow", "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.8" }, "livereveal": { "autolaunch": true }, "rise": { "theme": "black" }, "toc": { "base_numbering": 1, "nav_menu": {}, "number_sections": false, "sideBar": true, "skip_h1_title": false, "title_cell": "Table of Contents", "title_sidebar": "Contents", "toc_cell": false, "toc_position": {}, "toc_section_display": true, "toc_window_display": false } }, "nbformat": 4, "nbformat_minor": 2 }