LIDAR, which is either a mashup of “laser” and “radar” or an acronym for “light detection and ranging” (depending on whom you ask), is the method of shooting a laser at an object and measuring the time it takes for that reflection to return to a receiver. With it, we can measure distances, determine the speed of moving cars, and map terrain. Here, we look at how LIDAR works and how it can be applied to robots to give them a means to detect objects.
Rotary encoders are useful tools for measuring rotation on a shaft. They come in many different forms, including optical, mechanical, and magnetic. In this video, we show you how they work and how to use them on DC motors to ensure that a robot drives in a straight line for a set distance.
The Global Positioning System (GPS) is a collection of satellites, each containing a powerful and precise atomic clock, that broadcasts their time every 30 seconds. Handheld receivers, like your smartphone, can collect this data and perform calculations to figure out their position on the surface of the Earth. In this episode, we talk about how GPS works and how you can use a receiver to obtain time, latitude, longitude, and altitude data with an Arduino. From there, your robot project could know its location and how to drive somewhere.
A magnetometer is any instrument that can be used to measure magnetic fields. Developments in semiconductor and microelectromechanical systems (MEMS) in the past few decades have afforded us digital magnetometers that can be used to take precise measurements of these fields. Because the Earth acts as a giant magnet, we can use magnetometers to find the direction of the Magnetic North Pole. This could be extremely useful on robots that need to determine a heading to, say, autonomously navigate a course.
For the first time in the history of SparkFun’s Autonomous Vehicle Competition (AVC), we’ll have a separate 1 pound plastic ants division. These are combat bots made mostly out of plastic (the intention is for competitors to 3D print their chassis). We have combat bot veteran, Jamie Leben, help explain the different types of bot weapons and chassis types as well as give us some tips for making them out of plastic.
Learning how to control motors and drive your robot is the first step in creating your combat bot. We look at how to read a pulse width signal from an RC receiver using an Arduino and convert that into a PWM signal for driving motors. We use only 1 channel in this video, as mixing channels for steering is saved for another episode.
We read 2 channels from an RC hobby receiver and mix them together to give steering to our robot. We use 1 control stick to move the robot forward and back as well as turn left and right in a control scheme known as “arcade drive.” Additionally, former AVC combat bot competitor, Erik Josh, joins us to talk about his cardboard box-based bot.
We bring back Jamie Leben (IT Works, Loveland Creatorspace) to talk about some of the design considerations for plastic ant combat bots. He covers some of the basics, like being able drive upside down, and gives us some good tips on where to place most of your weight and how to design a cover. Jamie even provides a wedge bot 3D model for anyone to modify and print!
Let’s combine everything together and make a real, working combat bot! In this episode, we 3D print a wedge bot chassis, solder up the electronics, and program the onboard Arduino for “arcade drive.” By the end, we have a bot that’s ready to compete!
Go from blinking an LED to virtual prototyping in seven hours and still have time to eat lunch! This class is for anyone who has never played around with Arduino before and those who have played around a little bit but aren’t entirely sure what it’s all about. It’s easier than you think! We’ll put together basic single component electrical circuits that will teach you about analog and digital, input and output, and basic programming concepts such as “if” statements. We’ll also practice basic serial communication, and briefly cover basic virtual prototyping using Fritzing (www.fritzing.org). In case you haven’t noticed,…
Live stream from http://twitch.tv/adafruit with a demonstration of controlling a Circuit Playground board with Python using the Firmata protocol. Deep dive into adding custom Firmata commands into Arduino and Python code.
Live stream originally on http://twitch.tv/adafruit working on a Python library for the MCP3008 analog to digital converter with the Raspberry Pi. Discusses the structure of python libraries, how to talk to SPI devices, and details on publishing a library to the Python package index.
Live stream to http://twitch.tv/adafruit introducing Bluetooth Low Energy and how to compile and use bluez on the Raspberry Pi. Part 1 in a multiple part series diving into BLE & Raspberry Pi.
Live stream to http://twitch.tv/adafruit celebrating the 1st/4th anniversary of the Raspberry Pi by playing with its latest OpenGL hardware rendering driver. Deep dive into simple OpenGL fixed functionality pipeline programming with Python. There will be (animated) cake!
Live stream from http://twitch.tv/adafruit diving into Bluetooth Low Energy on the new Raspberry Pi 3. Demonstrates interacting with a BLE UART device from the noble node.js BLE library.
Live stream to http://twitch.tv/adafruit testing the performance of various video game system emulators on the new Raspberry Pi 3. The latest 3.6 version of Retropie is used to run the emulators
Live stream from http://twitch.tv/adafruit as the third part in a series on Bluetooth Low Energy and the Raspberry Pi. Demonstrates creating a custom BLE service on a Feather M0 Bluefruit board and then reading data from it over BLE with a Raspberry Pi 3 & Python code.