Build an IoT Remote-Controlled Crawler Car with Raspberry Pi and Node.js

This article is contributed by float, introducing a remote-controlled car robot project based on the Raspberry Pi platform, supporting image transmission and remote control. The software part of the project is open source, and it is recommended here for friends and Raspberry Pi enthusiasts.

Build an IoT Remote-Controlled Crawler Car with Raspberry Pi and Node.js

The inspiration for the project comes from the protagonist Wall-E in the Pixar animation “WALL-E”. A cute robot that survives in the ruins of the apocalypse and cleans the Earth day after day.

This is a very interesting IoT project! It runs on the ARM architecture-based Raspberry Pi development board. With the excellent performance of Node.js and the multi-platform compatible hardware framework Johnny-Five, we created this project. This project includes server-side to front-end programs, developed in JavaScript, and features include video monitoring, temperature data collection, remote control, distance measurement, GPS positioning, and more. Developers interested in IoT are welcome to create Issues.

Introduction

The inspiration for the project comes from the protagonist Wall-E in the Pixar animation “WALL-E”. A cute robot that survives in the ruins of the apocalypse and cleans the Earth day after day.

This is a very interesting IoT project! It runs on the ARM architecture-based Raspberry Pi development board. With the excellent performance of Node.js and the multi-platform compatible hardware framework Johnny-Five, we created this project. This project includes server-side to front-end programs, developed in JavaScript, and features include video monitoring, temperature data collection, remote control, distance measurement, GPS positioning, and more. Developers interested in IoT are welcome to create Issues.

Technology Stack

  • Johnny-Five

  • Vue

  • Express

  • Chart.js

  • MongoDB

Target Features

  • [x] Support real-time video monitoring (completed)

  • [x] Support camera rotation (completed)

  • [x] Support manual control of motor operation (completed)

  • [x] Support temperature collection (completed)

  • [ ] Support GPS positioning

  • [ ] Support distance detection

  • [ ] Support line-following function

  • [ ] Support free cruising

Environment Configuration and Dependencies

  • Raspberry Pi Development Board (Raspberry Pi 3 Model B)

  • Ubuntu Mate 16.04 Operating System

  • Node.js & npm

  • MJPG-streamer

Running the Project

Project Download

git clone https://github.com/zexiplus/WALL.E.git
cd WALL.E
npm install

Run the web interface program in development mode

npm run dev
// then open the browser at http://localhost:1234

Run the web interface program in production environment

npm run build
npm run local
//then open the browser at http://localhost:2999

Run the server-side program

npm run board

Materials Preparation

Build an IoT Remote-Controlled Crawler Car with Raspberry Pi and Node.js

Wiring Instructions

The wiring reference diagram is as follows:Build an IoT Remote-Controlled Crawler Car with Raspberry Pi and Node.jsThe current connected circuit modules include motor driver module, MPU6050 integrated module, servo motor module, and camera module. The motor driver module receives high and low levels from the IO pins, outputting 12V voltage to drive the motor. The servo motor module is used to rotate the camera, which is fixed on the axis supported by the servo motor. The MPU6050 module can sense the surrounding temperature and measure acceleration, etc. Due to a communication channel conflict between the GPS module and Wi-Fi, it cannot be introduced temporarily; GPS positioning will be completed in later versions. The IO pins of the Raspberry Pi in this project use WiringPi encoding, as shown:

Build an IoT Remote-Controlled Crawler Car with Raspberry Pi and Node.js

Wiring Description:

The signal line of the servo motor connects to pin 1 of the Raspberry Pi development board (WiringPi encoding, the same below). The SCL of the MPU6050 sensor connects to pin 3 of the Raspberry Pi development board, and the SDA connects to pin 2. The four input terminals of the motor driver module connect to pins 21, 22, 23, and 24 of the Raspberry Pi.

Project Display

Here is aWeb Control Page DEMO for the project, and below is a video demonstration.

Physical Picture of the Car:Build an IoT Remote-Controlled Crawler Car with Raspberry Pi and Node.jsBuild an IoT Remote-Controlled Crawler Car with Raspberry Pi and Node.js

Project Maintainer

GitHub | floatProject License Agreement: GPL

The links in the text can be clicked to read the original text at the end of the article

Build an IoT Remote-Controlled Crawler Car with Raspberry Pi and Node.js

More Exciting Content

OpenEyeTap: Open Source AR Smart Glasses Based on Raspberry Pi

Installing Nginx + PHP7.0 + Pi Dashboard on Raspberry Pi

Making Ultrasonic Radar with Arduino

PiSwitch: Making a Switch Game Console with Raspberry Pi

An Indian Guy Makes Smart Glasses for Less than $10

Build an IoT Remote-Controlled Crawler Car with Raspberry Pi and Node.js

Leave a Comment

×