Make – JavaScript Robotics – Building NodeBots with Johnny

Make – JavaScript Robotics – Building NodeBots with Johnny
اسم المؤلف
With Donovan Buck, Bryan Hughes, Pawel Szymczykowski, Raquel Velez, Kassandra Perch, Susan Hinton, Julian David Duque, Andrew Fisher, David Resseguie, Jonathan Beri, Emily Rose, Anna Gerber, Sara Gorecki & Lyza Danger Gardner
التاريخ
المشاهدات
221
التقييم
(لا توجد تقييمات)
Loading...
التحميل

Make – JavaScript Robotics – Building NodeBots with Johnny
Five, Raspberry Pi, Arduino, and BeagleBone
Rick Waldron& Backstop Media
With Donovan Buck, Bryan Hughes, Pawel Szymczykowski, Raquel
Velez, Kassandra Perch, Susan Hinton, Julian David Duque, Andrew
Fisher, David Resseguie, Jonathan Beri, Emily Rose, Anna Gerber,
Sara Gorecki & Lyza Danger Gardner
Table of contents
Preface
Conventions Used in This Book
Using Code Examples
Safari® Books Online
How to Contact Us
Acknowledgments
Julián Duque

  1. Building Robots with Lo-tech Materials
    Building the SimpleBot
    Bill of Materials
    Build Steps
    Installing Node.js Packages
    Testing the Build with a Basic Program
    Troubleshooting
    A Simple Driving Program
    Troubleshooting
    Cutting the Cord
    Building a Wireless SimpleBot
    Wiring Up
    Controlling the SimpleBot
    Troubleshooting
    What’s Next?
  2. TypeBot
    Bill of Materials
    Understanding Your Servomotors
    Anatomy of a Robot Arm
    Arm Layout
    Arm Constraints
    Building the Hardware
    The Base and Shoulder
    The Elbow
    The Wrist
    The Finger
    The Brains
    Writing the Software
    Creating the Project Files
    Controlling the Servos
    Initialization
    Sequencing a Key Press
    Running for the First Time
    Fine-Tuning the Arm
    What’s Next?
  3. Getting Started with NodeBoats
    Bill of Materials
    Tools
    The Submarine Motor Pod
    Why Use a Motor Driver?
    Motor Pod Components
    Modifying the Motor
    Testing the Motor
    Finishing the Motor
    Inserting the Motor
    Drilling into the Motor Pod
    Closing the Motor Pod
    Waterproofing Your Wires
    Setting Up Your Spark
    Testing the Spark
    Your First Spark Program
    Soldering the Motor Driver
    Wiring Up Your Boat
    Powering the Motor Driver
    Connecting the Spark and the Motor Driver
    Connecting the Motor
    Controlling Your Motor: The Code
    Adding Keypress Events
    Storing Keypress State
    Floating the Boat
    Steering with Servos
    Programming Servo Control
    Assembling the Rudder
    Setting Sail
    What’s Next?
  4. piDuino5 Mobile Robot Platform
    Bill of Materials
    Tools
    Setting Up the Boards and Installing Software
    Installing Node.js on the Raspberry Pi
    Downloading the piDuino5 Code and Dependencies
    Plug in the Arduino
    Test Johnny-Five over WebSockets
    Walk Through app.js
    Initializing Johnny-Five
    Controlling the Hardware
    Low-Latency Control with WebSockets
    Connect from Anywhere
    Assemble the Hardware
    Controlling with a Smartphone
    Downloading the piDuino5 Web App
    Post localtunnel to the Web App
    Try the Web App on a Phone
    Walk Through app.js and index.html
    Storing the localtunnel Address and Frontend
    Serving the UI
    Touchscreen Joystick
    Establishing a Connection
    Sending Commands
    What’s Next?
  5. Controlling a Hexapod with Johnny-Five
    Bill of Materials
    Controlling the Robot from the Command Line
    An Introduction to phoenix.js
    Assembling the Robot
    Prepare the Chassis
    Mount the Electronics
    Prepare the Servos
    Installing the coxae
    Installing the Femurs
    Installing the Tibias
    The Coordinate System
    Trim the Servos
    Trim the coxae
    Trim the Femurs
    Trim the Tibias
    Add Ranges to the Servos
    Walking Is Hard!
    Meet the Animation Class
    An Array of Servos as the Target
    A Servo.Array as the Target
    An Array of Servo.Arrays as the Target
    The First Animation Segment
    Walking
    The Row Gait
    The Walk Gait
    The Run Gait
    Turning
    Command Reference
    What’s Next?
  6. Building Voice-Controlled NodeBots
    Bill of Materials
    BeagleBone Black
    Building Our Project
    Building a Relay Circuit
    Controlling the Relay Circuit from Johnny-Five
    Building a Microphone Preamplifier Circuit
    Connecting the Microphone to the Relay from Johnny-Five
    Building the Commands Server
    Simple Voice Control Using the Web Speech API
    Integrate the Commands Server with the Relay Circuit
    Advanced Voice Control Using an Android Wearable
    Android Mobile Application
    Android Wear Application
    What’s Next?
  7. An Indoor Sundial
    Bill of Materials
    Foam Core Structural Pieces
    Building Our Sundial
    Cutting and Assembling the Core Structure
    Assemble the Mounting Board
    Wiring and Configuring the Servos
    Wiring the Servos
    Configuring the Servos
    Building the Lower Base
    Making the Disks
    Build the Base Walls and Base Disk Support
    Build the Base Walls
    Position the Disks
    Build the Disk Support
    Finish Parts and Construction
    Build the Azimuth Arm
    Construct the Elevation Arc
    Cut a Gnomon
    Wire Up the Sun
    Code to Make It Go
    Understanding sundial.js
    Set Up Some Configuration in sundial.js
    sundial.js Details
    Putting It All Together!
    Making It Go!
    What’s Next?
  8. Spooky Lights
    Bill of Materials
    Choosing a Controller Board
    Background
    What’s an LED Matrix?
    Assembling the Lights
    Tools Required
    Preparing the Matrices
    Constructing a Cable Assembly
    Decorating the Lights
    Troubleshooting
    Controlling an LED matrix
    Preparing the Arduino
    Running a Test Program
    Matrix Constructor Options
    Drawing to the Matrix
    Developing a Web Application
    Development Tools
    Using the Express Generator
    Developing an API
    Adding a User Interface
    Extending the Application
    What’s Next?
  9. CheerfulJ5
    Bill of Materials
    Wiring the Circuit
    The CheerfulJ5 code
    Connecting to the Arduino
    Controlling an RGB
    Using the Node.js Read-Eval-Print Loop
    Defining the CheerLights Color Map
    Accessing the CheerLights ThingSpeak API
    Using the Twitter Streaming API
    Going Wireless with the Spark WiFi Development Kit
    Adding the Spark to Your Circuit
    Using the Spark-io IO Plugin
    Switching to Battery Power
    Packaging It Up
    What’s Next?
  10. Interactive RGB LED Display with BeagleBone Black
    Bill of Materials
    BeagleBone Black
    WiFi USB Adapter (optional)
    External 5V Power Supply (Semi-Optional)
    RGB LEDs
    Sensors
    Miscellaneous
    Getting Ready: Software
    LEDScape
    Wiring Your LEDs
    Wiring Up Your RGB LEDs
    Code Time! Let’s Bring in the JavaScript
    Running a Test Script
    Adding in Johnny-Five/Beaglebone-io
    Adding a Photoresistor
    Changing Colors with an Accelerometer
    What’s Next?
  11. Physical Security, JavaScript, and You
    Simple Ultrasonic Sensor Project: Experimental Control Test (SUSPECT)
    Implementation
    SMS Augmented Ultrasonic Sensor Application: General Experimentation (SAUSAGE)
    Implementation
    Point-of-Entry Monitoring System (PoEMS)
    Implementation
    Lasers Impress Both Enemies and Relatives, Thank You (LIBERTY)
    Implementation
    Status Indicator Necessary, Buttons and Diodes (SINBaD)
    Implementation
    What’s Next?
  12. Artificial Intelligence: BatBot
    Artificial Intelligence: The Basics
    Remote-Controlled Robots
    Semi-Autonomous Robots
    Autonomous Robots
    BatBot
    Bill of Materials
    Some Notes About the Materials
    Assembly
    Step 1: Remote Control
    Moving the Robot
    Controlling the Robot
    Pointing and Reading from the Sonar
    Step 2: Autonomy
    Implementing the Algorithm
    Troubleshooting
    What’s Next?
  13. Delta Robots and Kinematics
    Bill of Materials
    Delta Anatomy
    Building Junky Delta
    Making It Move
    Predictable Positioning Through Kinematics
    More Sophisticated Delta Options
    TapsterBot
    Robot Army
    What’s Next?
  14. Meow Shoes
    Bill of Materials
    Parts Explained
    Making the Sensor Inserts
    Solder the Sensors to the Wiring
    Install Sensors into the Shoes
    Tunnel the Wiring out of the Shoe
    Connecting the Shoes
    Prepare the Coiled Connector Cord
    Connect the Shoes to an Arduino
    Prepare Wiring
    Arduino Soldering
    Attach the Arduino to the Right Shoe
    Running the Code with Johnny-Five
    Connecting to Johnny-Five
    Setting up Sensors
    Logging Output of Sensors
    Example Behavior
    What’s Next?
    A. Appendix
    Installing Node.js
    Installing Johnny-Five
    Troubleshooting
    More Information
    Configuring Your Hardware
    Arduino
    BeagleBone Black
    Raspberry Pi
    Spark WiFi Development Kit
    Android Development
    Installing Android Studio
    Creating an Android Project
    Installing Volley
    Index
    Symbols
    3D Hubs printing service, Parts Explained
    3D printers, Parts Explained
    hiring/borrowing, Parts Explained
    8×8 LED matrix boards, Choosing a Controller Board
    A
    a priori data, Step 2: Autonomy
    accelerometers, Changing Colors with an Accelerometer-Changing
    Colors with an Accelerometer
    wiring, Changing Colors with an Accelerometer
    Access Token/Access Token Secret (Twitter), Using the Twitter
    Streaming API
    saving as environment variables, Using the Twitter Streaming API
    active area (FSR), Parts Explained
    actuator (delta robot), Delta Anatomy
    Adafruit, Bill of Materials, RGB LEDs
    Neopixels, RGB LEDs
    power guide for, Wiring Up Your RGB LEDs
    Adafruit mini LED backpacks, Preparing the Matrices
    MatrixView class and, Adding a User Interface
    wire order for, Connecting a matrix
    Amazon, sourcing materials from, Bill of MaterialsAnalog Input pin, Connecting the Microphone to the Relay from
    Johnny-Five
    Android browser, Simple Voice Control Using the Web Speech API
    Android development, Android Development
    Android projects, creating, Creating an Android Project
    Android Studio, Advanced Voice Control Using an Android Wearable
    installing, Installing Android Studio
    Android Wear, Building a Microphone Preamplifier Circuit, Advanced
    Voice Control Using an Android Wearable-Android Wear Application
    Ångström, BeagleBone Black and Johnny-Five
    animation class
    enqueueing animation segments, The First Animation Segment-The
    First Animation Segment
    joint coordinate system and, The Coordinate System
    Animation.Class, Meet the Animation Class-An Array of Servo.Arrays
    as the Target
    array of Servo.Arrays as target, An Array of Servo.Arrays as the
    Target
    array of servos, targeting, An Array of Servos as the Target
    Servo.Array as target, An Array of Servos as the Target
    turning, Turning
    Arduinos, piDuino5 Mobile Robot Platform, Parts Explained
    configuring, Arduino
    connecting to, Connecting to the Arduino
    controlling LED matrix with, What’s an LED Matrix?
    delta robots and, Making It MoveFirmata version for HT16K33 devices, Preparing the Arduino
    flashing, wireless modules and, Arduino setup
    FSRs, connecting, Connect the Shoes to an Arduino-Attach the
    Arduino to the Right Shoe
    Mega, Prepare the Chassis
    Micro, Connect the Shoes to an Arduino
    Motor Shield, Bill of Materials
    motors and, Why Use a Motor Driver?
    Nano, Constructing a Cable Assembly
    power pin for, Implementation
    powering servos from, Wiring and Configuring the Servos
    PWM support on, Wiring the Circuit
    soldering, Arduino Soldering
    ultrasonic sensors, connecting, Implementation
    Uno, TypeBot, Connect the Shoes to an Arduino
    artificial intelligence, Artificial Intelligence: The Basics
    Asimo, Building Robots with Lo-tech Materials
    Atlas, Building Robots with Lo-tech Materials
    autopilot (on commercial aircraft), Autonomous Robots
    azimuth disk, Assemble the Mounting Board
    arm, building, Build the Azimuth Arm
    making, Making the Disks
    positioning, Position the Disks
    support, building, Build the Disk Support
    wiring light for, Wire Up the Sun
    wiring servo for, Wiring the standard (azimuth) servoB
    BatBot project, Artificial Intelligence: BatBot-What’s Next?
    algorithm for, implementing, Implementing the AlgorithmImplementing the Algorithm
    artificial intelligence, Artificial Intelligence: The Basics
    autonomy, Step 2: Autonomy-Implementing the Algorithm
    electromagnetic interference, Assembly
    remote control, implementing, Step 1: Remote Control-Pointing and
    Reading from the Sonar
    troubleshooting, Troubleshooting
    battery packs
    CheerfulJ5 project, Switching to Battery Power
    for Interactive RGB LED Display, External 5V Power Supply (SemiOptional)
    for Spark Cores, Wiring Up Your Boat
    BeagleBone Black, Building Voice-Controlled NodeBots, BeagleBone
    Black
    configuring, BeagleBone Black
    GPIO power output of, Building a Relay Circuit
    Interactive RGB LED Display and, Interactive RGB LED Display
    with BeagleBone Black-What’s Next?
    Johnny-Five framework and, BeagleBone Black and Johnny-Five
    LEDScape, LEDScape
    powering with USB, BeagleBone Black and Johnny-Five
    Rev C model, BeagleBone Black
    web apps on, Developing an APIwiring buttons into, Adding in Johnny-Five/Beaglebone-io
    beaglebone-io I/O plugin, BeagleBone Black and Johnny-Five
    wrapper, adding, Adding in Johnny-Five/Beaglebone-io-Adding in
    Johnny-Five/Beaglebone-io
    blink method (led), Using the Node.js Read-Eval-Print Loop
    Bluetooth, BatBot
    Board object (Johnny-Five), Connecting to the Arduino
    BOE Bot Robotics Kit, Some Notes About the Materials
    bonescript package (Node.js), BeagleBone Black and Johnny-Five
    BotBoarduino, Prepare the Chassis
    Bower, Downloading the piDuino5 Web App
    breadboard wiring
    Arduino servo shield vs., Bill of Materials
    for motor drivers, Soldering the Motor Driver
    for NodeBoats, Wiring Up Your Boat-Powering the Motor Driver
    for piDuino project, Assemble the Hardware
    for servos, Steering with Servos
    for SimpleBot project, Build Steps
    for wireless projects, Wiring Up
    FSRs for, Connect the Shoes to an Arduino
    C
    cable assembly, Constructing a Cable Assembly-Troubleshooting
    branches, making, Connecting a matrix
    troubleshooting, Troubleshooting
    cable ties and cardboard, Build Stepscapacitors, Assembly
    cardboard, Build Steps
    Cartesian robots, Delta Robots and Kinematics
    Cascades, Haar, Artificial Intelligence: The Basics
    ceramic capacitors, Wiring Up Your Boat
    chassis, printing, What’s Next?
    CheerfulJ5 project, CheerfulJ5-What’s Next?
    batteries, powering with, Switching to Battery Power
    code for, The CheerfulJ5 code
    extracting colors from tweets, Accessing the CheerLights
    ThingSpeak API
    packaging, Packaging It Up
    power for, Adding the Spark to Your Circuit
    Spark WiFi Development Kit, Going Wireless with the Spark WiFi
    Development Kit-Switching to Battery Power
    Spark-IO module and, Using the Spark-io IO Plugin
    Twitter Streaming API, Using the Twitter Streaming API-Using the
    Twitter Streaming API
    wiring, Wiring the Circuit
    CheerLights service, CheerfulJ5, Accessing the CheerLights
    ThingSpeak API-Accessing the CheerLights ThingSpeak API
    CheerLights ThingSpeak channel, Accessing the CheerLights
    ThingSpeak API
    Chip Antenna, Setting Up Your Spark
    Chrome, Simple Voice Control Using the Web Speech API
    circuit controller, Integrate the Commands Server with the Relay
    CircuitClavel, Reymond, Delta Robots and Kinematics, Predictable
    Positioning Through Kinematics
    closed control loop, Step 2: Autonomy
    Cloud9 IDE, BeagleBone Black and Johnny-Five
    CNC machines, Remote-Controlled Robots
    color maps, defining, Defining the CheerLights Color Map
    command line, controlling from, Controlling the Robot from the
    Command Line
    commands server, Building the Commands Server-Building the
    Commands Server
    EventEmitter pattern and, Integrate the Commands Server with the
    Relay Circuit
    common anode RGB LEDs, Wiring the Circuit, Controlling an RGB
    common cathode RGB LEDs, Wiring the Circuit, Implementation
    conductive layer (FSR), Parts Explained
    constraint programming, Arm Constraints
    Consumer Key/Consumer Secret (Twitter), Using the Twitter
    Streaming API
    saving as environment variables, Using the Twitter Streaming API
    continuous rotation servos, Understanding Your Servomotors
    in BatBot project, Moving the Robot-Moving the Robot
    modding standard servos into, Bill of Materials
    troubleshooting, Troubleshooting, Troubleshooting
    controller boards, Choosing a Controller Board
    soldering, Preparing the Matrices
    controllers, What’s Next?crimping wires, practicing, Connecting a matrix
    soldering vs., Connecting the Shoes
    cURL, Test Johnny-Five over WebSockets
    D
    DaVinci surgical robots, Semi-Autonomous Robots
    Debian, BeagleBone Black and Johnny-Five
    delta robots, Delta Robots and Kinematics-What’s Next?
    3D printing parts for, More Sophisticated Delta Options
    actuator, Delta Anatomy
    anatomy of, Delta Anatomy-Delta Anatomy
    defined, Delta Robots and Kinematics
    end effector, Delta Anatomy
    Junky Delta project, Building Junky Delta-Predictable Positioning
    Through Kinematics
    kinematics and, Predictable Positioning Through KinematicsPredictable Positioning Through Kinematics
    kits for, More Sophisticated Delta Options
    lower arm, Delta Anatomy
    measuring for kinematics, Predictable Positioning Through
    Kinematics
    powering, Building Junky Delta
    Robot Army, Robot Army
    TapsterBot, TapsterBot
    universal joint, Delta Anatomy
    upper arm, Delta Anatomy
    wiring, Building Junky DeltaDescriptive Geometric Kinematic Analysis of Clavels Delta Robot
    (Zsombor-Murray), Predictable Positioning Through Kinematics
    DFRobot shield, An Introduction to phoenix.js
    differential drive, Troubleshooting
    Digital Output pin, Connecting the Microphone to the Relay from
    Johnny-Five
    diode, Background
    drilling clean holes, Building Junky Delta
    driver IC (to control LED matrices), What’s an LED Matrix?
    dualshock-controller module, Controlling the Robot
    dynamic walking gait, Walking
    E
    E6000 QuickHold Contact Adhesive, Getting Started with NodeBoats
    electromagnetic interference, Assembly
    elevation disk, Construct the Elevation Arc
    wiring servos for, Wiring the sub-micro (elevation) servo
    enclosures, creating, Connecting the Arduino
    end effector (delta robots), Delta Anatomy
    positioning, Predictable Positioning Through Kinematics
    Ethernet, connecting BeagleBone Black, BeagleBone Black and
    Johnny-Five
    EventEmitter pattern, Integrate the Commands Server with the Relay
    Circuit
    events, Johnny-Five, Implementation
    express generator, Using the Express Generator
    routes, replacing, Developing an APIexpress REST API, Building the Commands Server
    Express server, Walk Through app.js and index.html
    F
    Firmata protocol, Preface, Arduino
    configuring for wireless modules, Arduino setup
    controlling HT16K33 devices, Preparing the Arduino
    Force Sensitive Resistor (FSR)
    connecting to Arduinos, Connect the Shoes to an Arduino-Attach the
    Arduino to the Right Shoe
    soldering, Solder the Sensors to the Wiring
    Force-sensitive resistor (FSR), Parts Explained
    forever module, Code Time! Let’s Bring in the JavaScript
    FTDI Console cables, Bill of Materials
    FTDI USB cable, Robot Army
    fully autonomous robots, Artificial Intelligence: BatBot, Autonomous
    Robots
    G
    Gaultier, Julian, Preface
    Getting Started with Arduino kit, Bill of Materials
    gnomon, An Indoor Sundial
    building, Cut a Gnomon
    disk, making, Making the Disks
    positioning, Position the Disks
    support, building, Build the Disk Support
    H
    H-Bridge chip, Why Use a Motor Driver?, Initializing Johnny-Fivehackerspace, Parts Explained
    HC-SR04 ultrasonic sensor, Simple Ultrasonic Sensor Project:
    Experimental Control Test (SUSPECT)
    heat shrink tubing, Connecting the Arduino
    Hexapod project, Controlling a Hexapod with Johnny-Five-What’s
    Next?
    assembling, Assembling the Robot-Installing the Tibias
    command reference, Command Reference
    coordinate system for, The Coordinate System
    coxae, installing, Installing the coxae
    femurs, installing, Installing the Femurs
    rear legs, controlling, An Introduction to phoenix.js
    testing safely, Installing the Tibias
    tibiae, installing, Installing the Tibias
    trimming servos, Trim the Servos-Trim the Tibias
    turning, Turning
    walking with Animation.Class, Walking
    Homebrew, Controlling the SimpleBot wirelessly
    house lights, controlling, Building a Relay Circuit
    HT16K33 based I2C 8×8 LED matrix boards, Choosing a Controller
    Board
    controller board for, Preparing the Matrices
    controller driver, What’s an LED Matrix?
    HTTP client libraries, Android Mobile Application
    I
    indoor sundial project, An Indoor Sundial-What’s Next?Arduino, mounting, Assemble the Mounting Board
    base walls, building, Build the Base Walls
    base, building, Building the Lower Base
    code for, Code to Make It Go-The tick function
    core structure, building, Cutting and Assembling the Core Structure
    daylight saving time and, Making It Go!
    disk support, building, Build the Disk Support
    making disks, Making the Disks
    servos, code for, servos.js-Running the code
    servos, configuring, Configuring the Servos
    servos, wiring, Wiring and Configuring the Servos-Running the code
    tick function, The tick function
    Intel Galileo, web apps on, Developing an API
    Inter-integrated circuit (I2C), What’s an LED Matrix?
    Adafruit mini LED backpacks and, Preparing the Matrices
    addresses, Preparing the Matrices
    Interactive RGB LED Display, Interactive RGB LED Display with
    BeagleBone Black-What’s Next?
    accelerometers, adding, Changing Colors with an AccelerometerChanging Colors with an Accelerometer
    animation, adding, Running a Test Script
    BeagleBone Black board, BeagleBone Black
    code for, Getting Ready: Software
    photoresistors, adding, Adding a Photoresistor-Adding a
    Photoresistor
    power for, External 5V Power Supply (Semi-Optional)sensors, Sensors
    testing, Running a Test Script
    Internet of Things, Accessing the CheerLights ThingSpeak API
    inverse kinematics, Predictable Positioning Through Kinematics
    J
    JavaScript
    forcing synchronous operation of, Implementing the Algorithm
    IDE for, Development Tools
    sketches, Arduino vs., Preface
    temporal library, Implementing the Algorithm, Making It Move
    Johnny-Five framework, Preface, piDuino5 Mobile Robot Platform
    BeagleBone Black and, BeagleBone Black and Johnny-Five
    Board object, Connecting to the Arduino
    connecting microphone to relay in, Connecting the Microphone to
    the Relay from Johnny-Five-Connecting the Microphone to the
    Relay from Johnny-Five
    controlling motors with, Controlling the Hardware
    controlling relay circuits with, Controlling the Relay Circuit from
    Johnny-Five
    developing APIs for hardware, Spooky Lights
    initializing, Initializing Johnny-Five
    installing, Installing Johnny-Five
    Led.Matrix class, Matrix Constructor Options
    Led.RGB class, Controlling an RGB
    listeners, Implementation
    Ping object, Implementationsensors, setting up, Setting up Sensors
    Servo API, Moving the Robot
    Sonar API, Pointing and Reading from the Sonar
    sonar sensors and, Some Notes About the Materials
    Spark-IO module, Your First Spark Program
    testing Arduino connection for, Connecting to Johnny-Five
    testing over WebSockets, Test Johnny-Five over WebSockets
    joint coordinate system, The Coordinate System
    JSConf 2013, TypeBot
    JST connectors, Connecting the Shoes
    Junky Delta project, Building Junky Delta-Predictable Positioning
    Through Kinematics
    Arduino, connecting, Making It Move
    kinematics and, Predictable Positioning Through KinematicsPredictable Positioning Through Kinematics
    powering, Building Junky Delta
    wiring, Building Junky Delta
    K
    keypress events, Adding Keypress Events
    Kinect, What’s Next?
    kinematic chains, Predictable Positioning Through Kinematics
    kinematics, Predictable Positioning Through Kinematics-Predictable
    Positioning Through Kinematics
    inverse, Predictable Positioning Through Kinematics
    L
    Lasers Impress Both Enemies & Relatives, Thank You (LIBERTY)code for, Implementation
    trigger for, Implementation
    wiring for, Implementation-Implementation
    Lasers Impress Both Enemies and Relatives, Thank You (LIBERTY),
    Lasers Impress Both Enemies and Relatives, Thank You (LIBERTY)-
    Implementation
    Leap Motion Controller, What’s Next?
    Led class (Johnny-Five), Initializing Johnny-Five
    LED Matrix (Adafruit), Choosing a Controller Board
    Led.Matrix class (Johnny-Five), Matrix Constructor Options
    API for, Drawing to the Matrix
    Led.RGB class (Johnny-Five), Controlling an RGB
    LEDs, Spooky Lights-What’s Next?
    matrices, connecting to cable assembly, Connecting a matrix
    matrices, specifying number of, Matrix Constructor Options
    matrix, defined, What’s an LED Matrix?
    powering many, Wiring Up Your RGB LEDs
    preparing matrices, Preparing the Matrices
    securing, Decorating the Lights
    specifying type of, Matrix Constructor Options
    testing, Running a Test Program
    LEDscape, LEDScape
    demo code for, Wiring Up Your RGB LEDs
    Linux, Controlling the SimpleBot wirelessly
    localtunnel service, Connect from Anywhereaddress, storing, Storing the localtunnel Address and Frontend
    posting to web app, Post localtunnel to the Web App
    lower arm (delta robots), Delta Anatomy
    Lynxmotion, Bill of Materials
    Phoenix 3DOF Hexapod chassis, Prepare the Chassis
    M
    machine learning, Artificial Intelligence: The Basics
    Magician Chassis, Bill of Materials, Assemble the Hardware
    magnetic contact switch, Point-of-Entry Monitoring System (PoEMS)
    wiring, Implementation
    Maker Shed, Bill of Materials, RGB LEDs
    Mars rovers, Semi-Autonomous Robots
    MatrixView class, Adding a User Interface
    MaxBotix sensor, Pointing and Reading from the Sonar
    quirks of, Pointing and Reading from the Sonar
    maze solving algorithms, Step 2: Autonomy
    meow shoes project, Meow Shoes
    behaviors, sample, Example Behavior-Example Behavior
    code for, Running the Code with Johnny-Five-What’s Next?
    connecting the shoes, Prepare the Coiled Connector Cord
    connecting to Arduino, Connecting the Shoes
    sensor inserts, Making the Sensor Inserts
    Messages API (Google Play Services), Android Wear Application
    micro USB cable, Parts Explained
    microphone circuit, Bill of Materialspreamplifier, building, Building a Microphone Preamplifier CircuitConnecting the Microphone to the Relay from Johnny-Five
    testing, Connecting the Microphone to the Relay from Johnny-Five
    microUSB breakout board, Assemble the Hardware
    momentary push buttons, Implementation-Implementation
    moondial, The tick function
    motor driver, The Submarine Motor Pod
    controlling speed with, Why Use a Motor Driver?
    powering, Powering the Motor Driver
    soldering headers on, Soldering the Motor Driver
    STBY pin, Connecting the Motor
    motors
    controlling with Johnny-Five, Controlling the Hardware
    troubleshooting, Assemble the Hardware
    N
    Nest thermostat, Autonomous Robots
    neural networks, Artificial Intelligence: The Basics
    ngrok service, Connect from Anywhere
    node-serialport module, Preface
    node-tesseract NPM module, What’s Next?
    node-tweet-stream module, Using the Twitter Streaming API
    Node.js
    installing, Installing Node.js
    installing on Raspberry Pi, Installing Node.js on the Raspberry Pi
    NodeBoats, Getting Started with NodeBoats-What’s Next?building the hull, Floating the Boat-Floating the Boat
    coding for, Controlling Your Motor: The Code-Storing Keypress
    State
    keypress events for, Adding Keypress Events
    rudders, adding, Steering with Servos
    NodeConf 2012, piDuino5 Mobile Robot Platform
    NOOBS, Raspberry Pi
    O
    OCROBOT matrices (AliExpress), Choosing a Controller Board
    wire order for, Connecting a matrix
    offset option (servo), Trim the Servos
    open control loops, Step 2: Autonomy
    Open Pixel Control, LEDScape
    OpenCV, What’s Next?
    delta robots and, What’s Next?
    optical character recognition (OCR), What’s Next?
    P
    Parrot AR drones, Semi-Autonomous Robots
    Pedersen, Cam, Preface
    Phoenix 3DOF Hexapod chassis (Lynxmotion)
    attaching servos, Prepare the Servos
    mounting Arduino Mega, Prepare the Chassis
    mounting electronics on, Mount the Electronics
    phoenix.js, Controlling the Robot from the Command Line-An
    Introduction to phoenix.jsAnimation.Class and, The First Animation Segment-The First
    Animation Segment
    centering servos with, Prepare the Servos
    joint coordinate system in, The Coordinate System
    servos, adding ranges to, Add Ranges to the Servos
    servos, trimming, Trim the Servos-Trim the Tibias
    photoresistors, Adding a Photoresistor-Adding a Photoresistor
    wiring, Adding a Photoresistor
    photovoltaic sensors, Implementation
    physical security projects, Physical Security, JavaScript, and YouWhat’s Next?
    LIBERTY project, Lasers Impress Both Enemies and Relatives,
    Thank You (LIBERTY)-Implementation
    PoEMS project, Point-of-Entry Monitoring System (PoEMS)-
    Implementation
    SAUSAGE project, SMS Augmented Ultrasonic Sensor Application:
    General Experimentation (SAUSAGE)-Implementation
    SINBaD project, Status Indicator Necessary, Buttons and Diodes
    (SINBaD)-Implementation
    SUSPECT project, Simple Ultrasonic Sensor Project: Experimental
    Control Test (SUSPECT)-Implementation
    pick and place machines, Delta Robots and Kinematics
    piDuino5 project, piDuino5 Mobile Robot Platform-What’s Next?
    code and dependencies, downloading, Downloading the piDuino5
    Code and Dependencies
    hardware, assembling, Assemble the Hardware-Assemble the
    Hardwareweb app, downloading, Downloading the piDuino5 Web App
    wiring breadboard for, Assemble the Hardware
    Ping object (Johnny-Five), Implementation
    pixel photo booth, What’s Next?
    Playstation DualShock Controller, BatBot
    dualshock-controller module, Controlling the Robot
    mapping servo movement to, Pointing and Reading from the Sonar
    Playstation Dualshock Controller
    troubleshooting, Troubleshooting
    Point-of-Entry Monitoring System (PoEMS), Point-of-Entry
    Monitoring System (PoEMS)-Implementation
    Popsicle sticks, drilling, Building Junky Delta
    Primus abstraction layer, Building the Commands Server-Building the
    Commands Server
    pulse width modulation (PWM), Understanding Your Servomotors
    pins, Connecting the Spark and the Motor Driver
    pulse-width modulation (PWM), Wiring the Circuit
    R
    RaphaelJS, Adding a User Interface
    Raspberry Pi, piDuino5 Mobile Robot Platform
    configuring, Raspberry Pi
    FTDI Console cables and, Bill of Materials
    installing Node.js, Installing Node.js on the Raspberry Pi
    web apps on, Developing an API
    WebSockets and, Low-Latency Control with WebSocketsWiFi adapter, configuring, Configuring a WiFi adapter
    ready callback handler, Initializing Johnny-Five
    relay abstraction (Johnny-Five abstraction), Connecting the
    Microphone to the Relay from Johnny-Five
    relay circuit, Bill of Materials
    building, Building a Relay Circuit
    controlling, Controlling the Relay Circuit from Johnny-Five
    powering, Building a Relay Circuit
    remote controlled robots, Artificial Intelligence: BatBot
    remote-controlled (RC) cars, Remote-Controlled Robots
    remote-controlled robots, Remote-Controlled Robots
    REPL (read-eval-print loop), Controlling the Robot from the
    Command Line, Moving the Robot
    REPL (Read-Eval-Print-Loop)
    using, Using the Node.js Read-Eval-Print Loop
    resistors, Parts Explained
    electromagnetic interference and, Assembly
    for RGB LEDs, Wiring the Circuit
    LEDs and, What’s an LED Matrix?
    RGB LEDs, Implementation
    testing, Wiring Up Your RGB LEDs
    wiring, Wiring Up Your RGB LEDs-Wiring Up Your RGB LEDs
    RGB-123 panels, RGB LEDs
    powering, Wiring Up Your RGB LEDs
    Robot Army delta, Robot ArmyS
    Safari, Simple Voice Control Using the Web Speech API
    SainSmart Uno R3, Some Notes About the Materials
    Samsung Galaxy Gear Live, Bill of Materials
    SCL line on I2C, What’s an LED Matrix?
    SDA line on I2C, What’s an LED Matrix?
    self-driving car (Google), Autonomous Robots
    semi-autonomous robots, Artificial Intelligence: BatBot, SemiAutonomous Robots
    algorithm for, implementing, Implementing the AlgorithmImplementing the Algorithm
    closed control loops, Step 2: Autonomy
    maze solving algorithms for, Step 2: Autonomy
    open control loops, Step 2: Autonomy
    sensor abstraction (Johnny-Five abstraction), Connecting the
    Microphone to the Relay from Johnny-Five
    sensors, Sensors
    adding to Hexapod, What’s Next?
    logging output of, Logging Output of Sensors
    serial terminals, faking for wireless communication, Controlling the
    SimpleBot wirelessly
    Servo API (Johnny-Five), Moving the Robot
    servo cozy, Assemble the Mounting Board
    servo shield, Arduino, Bill of Materials
    Servo.Array object (phoenix.js), An Introduction to phoenix.jsarray of, targeting with Animation.Class, An Array of Servo.Arrays
    as the Target
    targeting with Animation.Class, A Servo.Array as the Target
    servos, standard, Understanding Your Servomotors
    adding ranges to, Add Ranges to the Servos
    aligning/initializing, Prepare the Servos
    array of, targeting with Animation.Class, An Array of Servos as the
    Target
    attaching to Phoenix chassis, Prepare the Servos
    centering, The Elbow
    centering shaft of, Assemble the Mounting Board
    clearance for, Building Junky Delta
    controlling, Controlling the Servos-Controlling the Servos,
    Programming Servo Control
    converting into CR servos, Bill of Materials
    cozy for, Assemble the Mounting Board
    gluing to wood, The Base and Shoulder
    on boats, Steering with Servos
    range of, finding, Running the code, Building Junky Delta
    trimming, Trim the Servos-Trim the Tibias
    troubleshooting, Troubleshooting, Troubleshooting, Making It Move
    wiring, Steering with Servos
    Shapeways 3D printing service, Parts Explained
    silicone, Getting Started with NodeBoats
    simple circuits, Remote-Controlled RobotsSimple Ultrasonic Sensor Project: Experimental Control Test
    (SUSPECT), Simple Ultrasonic Sensor Project: Experimental Control
    Test (SUSPECT)-Implementation
    code for, Implementation-Implementation
    wiring for, Implementation
    SimpleBot project, Building Robots with Lo-tech Materials-What’s
    Next?
    breadboard wiring for, Build Steps
    drive considerations, Troubleshooting
    making semi-autonomous, Some Notes About the Materials
    materials for, Bill of Materials
    testing, Testing the Build with a Basic Program
    troubleshooting, Troubleshooting, Troubleshooting
    wireless, Building a Wireless SimpleBot-Troubleshooting
    sketches, Arduino vs. JavaScript, Preface
    smartphone, interfacing with, Controlling with a Smartphone-Try the
    Web App on a Phone
    SMS Augmented Ultrasonic Sensor Application: General
    Experimentation (SAUSAGE), SMS Augmented Ultrasonic Sensor
    Application: General Experimentation (SAUSAGE)-Implementation
    Socat, Controlling the SimpleBot wirelessly
    solderable boards, Building a Relay Circuit, Preparing the Matrices
    heat damage, avoiding, Preparing the Matrices
    soldering
    Arduinos, Arduino Soldering
    crimping wires vs., Connecting the Shoessoldering wires together, Constructing a Cable Assembly
    Sonar API (Johnny-Five API), Pointing and Reading from the Sonar
    sonar sensors, Some Notes About the Materials
    pointing, Pointing and Reading from the Sonar-Pointing and
    Reading from the Sonar
    reading, Pointing and Reading from the Sonar-Pointing and Reading
    from the Sonar
    spacer layer (FSR), Parts Explained
    Spark CLI command-line tool, Setting Up Your Spark
    access credentials, storing, Spark WiFi Development Kit
    installing, Spark WiFi Development Kit
    Spark Cloud, Using the Spark-io IO Plugin
    Spark Core, Getting Started with NodeBoats, Setting Up Your SparkSoldering the Motor Driver
    claiming, Spark WiFi Development Kit
    development kit, Spark WiFi Development Kit
    identifying in code, Your First Spark Program
    motors and, Why Use a Motor Driver?
    setting up, Setting Up Your Spark
    testing, Testing the Spark
    troubleshooting, Setting Up Your Spark
    voltage requirements for, Wiring Up Your Boat, Powering the Motor
    Driver
    VoodooSpark firmware, installing, Spark WiFi Development Kit
    wiring, Adding the Spark to Your Circuit
    Spark Fun, Bill of Materials, RGB LEDsdriver for, Why Use a Motor Driver?
    Joystick shield, What’s Next?
    Spark Maker Kit, Bill of Materials
    Spark Photon, Spark WiFi Development Kit
    claiming, Spark WiFi Development Kit
    Spark WiFi Development Kit, CheerfulJ5, Going Wireless with the
    Spark WiFi Development Kit-Switching to Battery Power
    Spark-IO module, Your First Spark Program
    CheerfulJ5 project and, Using the Spark-io IO Plugin
    Sphero, What’s Next?
    spooky lights project, Spooky Lights-What’s Next?
    cable assembly, constructing, Constructing a Cable AssemblyTroubleshooting
    lights, assembling, Assembling the Lights-Troubleshooting
    lights, decorating, Decorating the Lights
    user interfacing, adding, Adding a User Interface
    web application for, Developing a Web Application-Adding a User
    Interface
    Standard Firmata library, Plug in the Arduino
    state machines, Sequencing a Key Press-Sequencing a Key Press
    state, of robots, Step 2: Autonomy
    static walking gait, Walking
    Status Indicator Necessary, Buttons and Diodes (SINBaD), Status
    Indicator Necessary, Buttons and Diodes (SINBaD)-Implementation
    code for, Implementation
    wiring, Implementation-ImplementationSTBY pin on motor board, Connecting the Motor
    stk_500 sync error, Arduino setup
    Styrofoam, Some Notes About the Materials
    SublimeText, Development Tools
    submarine motor pod, The Submarine Motor Pod-Waterproofing Your
    Wires
    SumoBot Jr., Some Notes About the Materials
    SunCalc npm package, Code to Make It Go
    T T
    amiya Submarine Motor, The Submarine Motor Pod-Waterproofing
    Your Wires
    closing/sealing, Closing the Motor Pod
    components of, Motor Pod Components
    connecting to breadboard, Connecting the Motor
    drilling holes into, Drilling into the Motor Pod
    inserting motor, Inserting the Motor
    positioning in the hull, Floating the Boat
    soldering and, Modifying the Motor
    testing, Testing the Motor
    variants of, Motor Pod Components
    TapsterBot, TapsterBot
    Telnet, Network test
    temporal library (JavaScript), Implementing the Algorithm, Making It
    Move
    Temporal module, Programming Servo Control
    Tessel, What’s Next?testing
    Hexapod project, Installing the Tibias
    Interactive RGB LED Display, Running a Test Script
    LEDs, Running a Test Program
    microphone circuit, Connecting the Microphone to the Relay from
    Johnny-Five
    RGB LEDs, Wiring Up Your RGB LEDs
    SimpleBot project, Testing the Build with a Basic Program
    Spark Core, Testing the Spark
    Tamiya Submarine Motor, Testing the Motor
    WebSockets, Test Johnny-Five over WebSockets
    WiFi module, Test and configure the module
    ThingSpeak, CheerfulJ5
    Trossen Robotics, Predictable Positioning Through Kinematics
    troubleshooting
    servos, Troubleshooting, Troubleshooting
    Spark Core, Setting Up Your Spark
    TweetControl App, Accessing the CheerLights ThingSpeak API
    Twilio API, SMS Augmented Ultrasonic Sensor Application: General
    Experimentation (SAUSAGE)-Implementation
    installing, Implementation
    number formatting for, Implementation
    Sandbox, Implementation
    Twitter Application Manager, Using the Twitter Streaming API
    access credentials, generating, Using the Twitter Streaming APITwitter Developer account, Using the Twitter Streaming API
    Twitter Streaming API, CheerfulJ5, Using the Twitter Streaming APIUsing the Twitter Streaming API
    TypeBot project, TypeBot-What’s Next?
    arm anatomy, Anatomy of a Robot Arm-Arm Constraints
    initializing, Initialization
    software, writing, Writing the Software-Fine-Tuning the Arm
    wiring, The Brains
    U
    uFL Connector, Setting Up Your Spark
    ultrasonic sensor, Simple Ultrasonic Sensor Project: Experimental
    Control Test (SUSPECT)
    quirks of, Pointing and Reading from the Sonar
    threshold, finding, Implementation
    universal joint (delta robot), Delta Anatomy
    building, Building Junky Delta
    upper arm (delta robots), Delta Anatomy
    UPS, 3D printers and, Parts Explained
    V V
    elcro, Assemble the Hardware
    Velez, Raquel, TypeBot
    Virtual Serial Ports Emulator (VSPE), Controlling the SimpleBot
    wirelessly
    virtualjoystick.js library, Touchscreen Joystick
    voice control, Building Voice-Controlled NodeBots-What’s Next?Android Wear for, Advanced Voice Control Using an Android
    Wearable-Android Wear Application
    commands server for, Building the Commands Server-Building the
    Commands Server
    mobile application for, Android Mobile Application-Android Wear
    Application
    Web Speech API, Simple Voice Control Using the Web Speech API
    Volley HTTP client library, Android Mobile Application
    installing, Installing Volley
    VoodooSpark firmware, Setting Up Your Spark, Using the Spark-io IO
    Plugin
    installing, Spark WiFi Development Kit
    W
    walking
    row gait, The Row Gait
    run gait, The Run Gait
    tripod gait, The Run Gait
    walk gait, The Walk Gait
    wave gait, The Row Gait
    with Animation.Class, Meet the Animation Class-An Array of
    Servo.Arrays as the Target, Walking
    without animation class, Walking Is Hard!
    wall-follower algorithm, Step 2: Autonomy
    waterproof construction, Getting Started with NodeBoats
    servos and, Assembling the Rudder
    wires, Waterproofing Your Wiresweb apps, troubleshooting, Try the Web App on a Phone
    Web Speech API, What’s Next?, Simple Voice Control Using the Web
    Speech API
    limitations of, Simple Voice Control Using the Web Speech API
    WebSockets
    establishing connections with, Establishing a Connection
    low-latency control with, Low-Latency Control with WebSockets
    Primus and, Building the Commands Server-Building the
    Commands Server
    testing Johnny-Five framework with, Test Johnny-Five over
    WebSockets
    WebSocketServer, Low-Latency Control with WebSockets
    WiFi
    connecting BeagleBone Black, BeagleBone Black and Johnny-Five
    usb adapter for, WiFi USB Adapter (optional)
    Wii Motion Controller, What’s Next?
    Williams, Chris, Preface
    Windows
    Telnet client, installing, Network test
    VSPE for, Controlling the SimpleBot wirelessly
    wireless modules, Building a Wireless SimpleBot
    configuring, Test and configure the module
    connecting over serial, Test and configure the module
    Firmata and, Arduino setup
    power and, Wiring Uptypes of, Wiring Up
    wires
    soldering, Modifying the Motor
    waterproofing, Waterproofing Your Wires
    wiring
    accelerometers, Changing Colors with an Accelerometer
    buttons into BeagleBone Black, Adding in Johnny-Five/Beagleboneio
    magnetic contact switch, Implementation
    momentary push buttons, Implementation-Implementation
    photovoltaic sensors, Implementation
    RGB LEDs, Wiring Up Your RGB LEDs-Wiring Up Your RGB
    LEDs
    servos, standard, Steering with Servos
    Spark Core, Adding the Spark to Your Circuit
    ws package (Node.js), Low-Latency Control with WebSockets
    wscat library, Test Johnny-Five over WebSockets
    X
    XBee radios, BatBot
    troubleshooting, Troubleshooting
    Z
    Zsombor-Murray, Paul, Predictable Positioning Through KinematicsAbout the Authors
    Jonathan Beri is a Maker of all sorts, with an affinity for APIs, robots, and
    obscure JavaScript frameworks. He currently works at Google as a
    Developer Advocate, making the lives of developers easier, one day at a
    time. As a Developer Advocate, he’s helped launch the Google+ Hangout
    Apps Platform, Google+ Sign-In, and the Google Apps Marketplace. He
    can be found on Google+ as JonathanBeri.
    Donovan Buck is an aspiring roboticist and a contributor to Johnny-Five —
    the open source, JavaScript, and Arduino programming framework. He is a
    strong believer in the value of continuing education in computer science.
    His own CS education began at age 5, ferrying punch cards around the data
    center for his dad and swapping out magnetic tapes while perched atop
    boxes of printer paper. He can be found on Twitter and GitHub as @dtex.
    Kassandra Perch is an Open Web Engineer and Educator at Bocoup. She’s
    been a JavaScript addict for her entire career as a programmer, and enjoys
    JavaScript in browsers, on the server, and of course on robots! When she’s
    not trying new robotics platforms, she’s working on crafting, or enjoying
    her evenings in Austin, Texas. She can be found on Twitter, GitHub, and
    most places as @nodebotanist.
    Bryan Hughes is a frontend developer at Rdio and the lead organizer for
    the NodeBots SF meetup group. Bryan also created the Raspi-IO library
    which provides Raspberry Pi support for the Johnny-Five robotics
    framework. Bryan received his Ph.D. in Electrical Engineering and
    Computer Science from Texas Tech University in 2010. When not coding,
    he can be found spending time with his amazing partner and going wine
    tasting, attempting to become a photographer, or hiking. He can be found on
    Twitter at @nebrius and on GitHub as @bryan-m-hughes.
    Raquel Vélez has been a core member of the NodeBots movement since
  15. Prior to becoming a web developer, she was a full-time roboticist,
    having studied Mechanical Engineering at the California Institute of
    Technology and completed some masters work in robotics engineering at
    the University of Genoa, Italy. She has worked at a variety of universities
    and laboratories around the globe, including the NASA Jet PropulsionLaboratory, the MIT Lincoln Laboratory, and Applied Minds, Inc. She can
    be found on Twitter and GitHub as @rockbot.
    Lyza Danger Gardner is a dev. Since cofounding Portland, Oregon–based
    mobile web startup Cloud Four in 2007, Lyza has tortured and thrilled
    herself with the intricate ins and outs of the bazillion devices and browsers
    now accessing the web globally. Lyza is also coauthor of Head First Mobile
    Web (O’Reilly). She can be found on Twitter and GitHub as @lyzadanger.
    Susan Hinton is a JavaScript developer who likes to tinker with hardware.
    A Maker at heart, she’s no stranger to minor burns from soldering irons and
    3D printers. She’s a regular contributor to the open source Node.js
    electronics scene, and enjoys teaching others how to immerse themselves in
    the nerdiverse. Suz can be found on Twitter and GitHub as @noopkat.
    Rick Waldron is an Open Web Engineer at Bocoup and the creator of
    Johnny-Five, a JavaScript framework for hardware programming on the
    Node.js platform, and is working towards establishing standards for general
    hardware APIs. Currently supporting Arduino, BeagleBone, Raspberry Pi,
    Linino One, Pinoccio, Spark-Core, Light Blue Bean, pcDuino, Intel Galileo
    and Intel Edison, his work was recently highlighted at Intel’s IDF2014. As a
    jQuery Core committer and former board member of the jQuery
    Foundation, Rick serves on Ecma TC39 as a representative of jQuery,
    channeling the project’s vast real-world experience into contributions to the
    design of the next version of JavaScript. He can be found on both Twitter
    and GitHub as @rwaldron.
    Sara Gorecki first discovered her love of code through hardware hacking
    and experimenting with Johnny-Five. An alum of both Cornell University
    and the Flatiron school, she’s currently working as a Node Engineer at
    Penton Media. In her quest to strengthen her local JavaScript community
    she cofounded NYC’s Queens JS meetup. She can be found on Twitter and
    GitHub as @opheliasdaisies.
    Julián Duque is a developer and educator by passion currently working as
    software engineer at NodeSource. He organises multiple community events
    in Colombia like MedellinJS, NodeBots Day and JSConf Colombia. Heloves sharing knowledge and is currently collaborating as evangelist in the
    io.js project and teaching programming fundamentals and JavaScript
    through NodeSchool and NodeBots events in Colombia and Latin America.
    He can be found on Twitter at @julian_duque and on GitHub as
    @julianduque.
    David Resseguie began his programming journey at the age of 5 when his
    dad bought an Apple IIe computer. Instead of just playing Stickybear
    Numbers, he wanted to know how it worked. He’s enjoyed making and
    developing things with technology ever since. David is an avid collector of
    toy robots and loves the opportunity to combine that interest with software
    development through hardware hacking, Internet of Things, and NodeBots.
    He also has a passion for STEAM education and enjoys speaking at
    schools, using robotics to get kids excited about careers in science and
    technology. He can be found on Twitter and GitHub as @Resseguie.
    Andrew Fisher is a creator of things that combine web tech, physical
    computing, and lots of data. He is an interaction researcher and developer,
    exploring how behaviour influences and is influenced by technology and
    machines. Andrew is the lead organizer of NodeBots Melbourne and is a
    strong evangelist on the use of web technologies with hardware. He can be
    found on Twitter and GitHub @ajfisher.
    Pawel Szymczykowski is a software engineer at Wedgies and an
    enthusiastic maker of various things both physical and code-based. He
    discovered his passion for both hardware and JavaScript as a result of the
    NodeBots movement at JSConf 2013. He came up with a simple open
    source laser cut sumo bot kit for the NodeBots Day event in Las Vegas
    which ended up making appearances at similar events around the world.
    You can find it online at sumobotkit.com. He can be found on Twitter
    @makenai.
    Anna Gerber is a core member of NodeBotsAU. She is also a technical
    project manager with the ITEE eResearch Group at the University of
    Queensland, Australia. She can be found on Twitter @annagerber.Emily Rose is a transhumanist with a passion for queer cyborg artistry.
    They are currently experimenting with ambient intelligence, adaptive
    automation, and evolving interfaces. Emily is a world-class speaker who
    has brought humor and enlightenment to audiences across the globe.
    Original NodeBots curator, founder of DanceJS, and one of the most
    interesting individuals in the known universe; Emily is an unnatural force of
    pure unbridled creativity. They can be reached via Twitter or via GitHub.Colophon
    The cover photo of a modified Robot Army Delta Bot is by Pawel
    Szymczykowski. Special thanks to Mark and Sarah for letting Pawel
    borrow it for the photo shoot.
    The cover fonts for Make: JavaScript Robotics are URW Typewriter and
    Guardian Sans. The text font is Adobe Minion Pro; the heading font is
    Adobe Myriad Condensed; and the code font is Dalton Maag’s Ubuntu
    Mono.Preface
    Conventions Used in This Book
    Using Code Examples
    Safari® Books Online
    How to Contact Us
    Acknowledgments
    Julián Duque
  16. Building Robots with Lo-tech Materials
    Building the SimpleBot
    Bill of Materials
    Build Steps
    Installing Node.js Packages
    Testing the Build with a Basic Program
    Troubleshooting
    A Simple Driving Program
    Troubleshooting
    Cutting the Cord
    Building a Wireless SimpleBot
    Wiring Up
    Controlling the SimpleBot
    Troubleshooting
    What’s Next?
  17. TypeBot
    Bill of Materials
    Understanding Your Servomotors
    Anatomy of a Robot Arm
    Arm Layout
    Arm Constraints
    Building the HardwareThe Base and Shoulder
    The Elbow
    The Wrist
    The Finger
    The Brains
    Writing the Software
    Creating the Project Files
    Controlling the Servos
    Initialization
    Sequencing a Key Press
    Running for the First Time
    Fine-Tuning the Arm
    What’s Next?
  18. Getting Started with NodeBoats
    Bill of Materials
    Tools
    The Submarine Motor Pod
    Why Use a Motor Driver?
    Motor Pod Components
    Modifying the Motor
    Testing the Motor
    Finishing the Motor
    Inserting the Motor
    Drilling into the Motor Pod
    Closing the Motor Pod
    Waterproofing Your Wires
    Setting Up Your Spark
    Testing the Spark
    Your First Spark ProgramSoldering the Motor Driver
    Wiring Up Your Boat
    Powering the Motor Driver
    Connecting the Spark and the Motor Driver
    Connecting the Motor
    Controlling Your Motor: The Code
    Adding Keypress Events
    Storing Keypress State
    Floating the Boat
    Steering with Servos
    Programming Servo Control
    Assembling the Rudder
    Setting Sail
    What’s Next?
  19. piDuino5 Mobile Robot Platform
    Bill of Materials
    Tools
    Setting Up the Boards and Installing Software
    Installing Node.js on the Raspberry Pi
    Downloading the piDuino5 Code and Dependencies
    Plug in the Arduino
    Test Johnny-Five over WebSockets
    Walk Through app.js
    Initializing Johnny-Five
    Controlling the Hardware
    Low-Latency Control with WebSockets
    Connect from Anywhere
    Assemble the Hardware
    Controlling with a SmartphoneDownloading the piDuino5 Web App
    Post localtunnel to the Web App
    Try the Web App on a Phone
    Walk Through app.js and index.html
    Storing the localtunnel Address and Frontend
    Serving the UI
    Touchscreen Joystick
    Establishing a Connection
    Sending Commands
    What’s Next?
  20. Controlling a Hexapod with Johnny-Five
    Bill of Materials
    Controlling the Robot from the Command Line
    An Introduction to phoenix.js
    Assembling the Robot
    Prepare the Chassis
    Mount the Electronics
    Prepare the Servos
    Installing the coxae
    Installing the Femurs
    Installing the Tibias
    The Coordinate System
    Trim the Servos
    Trim the coxae
    Trim the Femurs
    Trim the Tibias
    Add Ranges to the Servos
    Walking Is Hard!
    Meet the Animation ClassAn Array of Servos as the Target
    A Servo.Array as the Target
    An Array of Servo.Arrays as the Target
    The First Animation Segment
    Walking
    The Row Gait
    The Walk Gait
    The Run Gait
    Turning
    Command Reference
    What’s Next?
  21. Building Voice-Controlled NodeBots
    Bill of Materials
    BeagleBone Black
    Building Our Project
    Building a Relay Circuit
    Controlling the Relay Circuit from Johnny-Five
    Building a Microphone Preamplifier Circuit
    Connecting the Microphone to the Relay from Johnny-Five
    Building the Commands Server
    Simple Voice Control Using the Web Speech API
    Integrate the Commands Server with the Relay Circuit
    Advanced Voice Control Using an Android Wearable
    Android Mobile Application
    Android Wear Application
    What’s Next?
  22. An Indoor Sundial
    Bill of Materials
    Foam Core Structural PiecesBuilding Our Sundial
    Cutting and Assembling the Core Structure
    Assemble the Mounting Board
    Wiring and Configuring the Servos
    Wiring the Servos
    Configuring the Servos
    Building the Lower Base
    Making the Disks
    Build the Base Walls and Base Disk Support
    Build the Base Walls
    Position the Disks
    Build the Disk Support
    Finish Parts and Construction
    Build the Azimuth Arm
    Construct the Elevation Arc
    Cut a Gnomon
    Wire Up the Sun
    Code to Make It Go
    Understanding sundial.js
    Set Up Some Configuration in sundial.js
    sundial.js Details
    Putting It All Together!
    Making It Go!
    What’s Next?
  23. Spooky Lights
    Bill of Materials
    Choosing a Controller Board
    Background
    What’s an LED Matrix?Assembling the Lights
    Tools Required
    Preparing the Matrices
    Constructing a Cable Assembly
    Decorating the Lights
    Troubleshooting
    Controlling an LED matrix
    Preparing the Arduino
    Running a Test Program
    Matrix Constructor Options
    Drawing to the Matrix
    Developing a Web Application
    Development Tools
    Using the Express Generator
    Developing an API
    Adding a User Interface
    Extending the Application
    What’s Next?
  24. CheerfulJ5
    Bill of Materials
    Wiring the Circuit
    The CheerfulJ5 code
    Connecting to the Arduino
    Controlling an RGB
    Using the Node.js Read-Eval-Print Loop
    Defining the CheerLights Color Map
    Accessing the CheerLights ThingSpeak API
    Using the Twitter Streaming API
    Going Wireless with the Spark WiFi Development KitAdding the Spark to Your Circuit
    Using the Spark-io IO Plugin
    Switching to Battery Power
    Packaging It Up
    What’s Next?
  25. Interactive RGB LED Display with BeagleBone Black
    Bill of Materials
    BeagleBone Black
    WiFi USB Adapter (optional)
    External 5V Power Supply (Semi-Optional)
    RGB LEDs
    Sensors
    Miscellaneous
    Getting Ready: Software
    LEDScape
    Wiring Your LEDs
    Wiring Up Your RGB LEDs
    Code Time! Let’s Bring in the JavaScript
    Running a Test Script
    Adding in Johnny-Five/Beaglebone-io
    Adding a Photoresistor
    Changing Colors with an Accelerometer
    What’s Next?
  26. Physical Security, JavaScript, and You
    Simple Ultrasonic Sensor Project: Experimental Control Test
    (SUSPECT)
    Implementation
    SMS Augmented Ultrasonic Sensor Application: General
    Experimentation (SAUSAGE)Implementation
    Point-of-Entry Monitoring System (PoEMS)
    Implementation
    Lasers Impress Both Enemies and Relatives, Thank You
    (LIBERTY)
    Implementation
    Status Indicator Necessary, Buttons and Diodes (SINBaD)
    Implementation
    What’s Next?
  27. Artificial Intelligence: BatBot
    Artificial Intelligence: The Basics
    Remote-Controlled Robots
    Semi-Autonomous Robots
    Autonomous Robots
    BatBot
    Bill of Materials
    Some Notes About the Materials
    Assembly
    Step 1: Remote Control
    Moving the Robot
    Controlling the Robot
    Pointing and Reading from the Sonar
    Step 2: Autonomy
    Implementing the Algorithm
    Troubleshooting
    What’s Next?
  28. Delta Robots and Kinematics
    Bill of Materials
    Delta AnatomyBuilding Junky Delta
    Making It Move
    Predictable Positioning Through Kinematics
    More Sophisticated Delta Options
    TapsterBot
    Robot Army
    What’s Next?
  29. Meow Shoes
    Bill of Materials
    Parts Explained
    Making the Sensor Inserts
    Solder the Sensors to the Wiring
    Install Sensors into the Shoes
    Tunnel the Wiring out of the Shoe
    Connecting the Shoes
    Prepare the Coiled Connector Cord
    Connect the Shoes to an Arduino
    Prepare Wiring
    Arduino Soldering
    Attach the Arduino to the Right Shoe
    Running the Code with Johnny-Five
    Connecting to Johnny-Five
    Setting up Sensors
    Logging Output of Sensors
    Example Behavior
    What’s Next?
    A. Appendix
    Installing Node.js
    Installing Johnny-FiveTroubleshooting
    More Information
    Configuring Your Hardware
    Arduino
    BeagleBone Black
    Raspberry Pi
    Spark WiFi Development Kit
    Android Development
    Installing Android Studio
    Creating an Android Project
    Installing Volley
    Index

كلمة سر فك الضغط : books-world.net
The Unzip Password : books-world.net

تحميل

يجب عليك التسجيل في الموقع لكي تتمكن من التحميل

تسجيل | تسجيل الدخول