Puppet, Dinosaur, and Ducks?

DIY Puppet
DIY Beipiaosaurus dinosaur
Duck sculptures along the Nashua New Hampshire river walk

Have I gone off the deep end? Where are the radio and robot projects?

This does deserve some explanation. Like a lot of kids, I was amazed at the animatronic characters and creatures on my first trip to Disneyland. I’m going to date myself here… This trip happened to be during the summer of 1977. Most of you know what else happened during the summer of 1977, right? Yeah. Star Wars. Guess what quickly overtook my fascination with animatronics? Droids, or to put in today’s terminology, autonomous mobile robots. I was less interested in pre-programmed automatons than I was with a mechanical pal that could wander around, do smart things, and maybe even fix a moisture vaporator.

Fast forward to today. In my professional life I’ve worked on some cool robots with great people. Most were practical creations solving specific problems. Except for the first baby doll prototypes at IS Robotics (now iRobot), the rest of the robots I’ve worked on lacked personality and any artistic features. These just weren’t necessary to solve the problems at hand. But today, we have AI models that can chat with you as if they were a pirate, a Klingon, William Shatner, or Yoda. We can also reach into the world of animatronics and create amazingly lifelike characters and creatures. What would be more fun, a dinosaur that roams your house sucking up dirt, or a Roomba? How about a pool skimming robot that’s a pirate ship complete with a crew that talks with you? Totally unnecessary, but so much more entertaining!

Great, why am I making puppets, dinosaurs, and ducks? I want to try my hand at making animatronic creatures. I have the electronics, programming, and some of the mechanical aspects covered. If you strip the technology out of an animatronic, you’re left with at most a complicated puppet, or at least a static model, but with amazing artistic features.

To be honest, I lack artistic talent. Maybe I have some talent for visualizing in three dimensions, but other than that, I’m no natural artist. To complicate matters, I’m also very red/green colorblind, which made art my least favorite school subject growing up (ok, maybe tied with gym, I didn’t suck as much at gym though). Since I’ve always shied away from anything artistic, I lack the artistic skills and knowledge that are really necessary to bring creations to life. The only way to overcome this deficit is through deliberate practice. I need to create and learn, over and over. So I made a puppet. And a dinosaur. And had the opportunity to work on ducks. And am currently making another dinosaur. Each project is expanding my toolbox, improving my skills, and opening my eyes through experience (not just watching someone else on YouTube).

Please bear with me as I go on this adventure. I promise to post some ham radio projects now and then. I will be delving back into the tech side of animatronics as well.

Here are some work in progress videos.

Click on the image below to see the Facebook post.

EME Dish Overview

I’ve converted a 1.8m fixed dish to have elevation and azimuth control for use mainly on 10GHz EME (Earth-Moon-Earth, aka Moonbounce) Amateur Radio.

The drive motors are SDD3 from https://sub-lunar.com Many thanks to Paul W2HRO for pre- and post- sales support.

Inspiration to attempt the project was definitely helped by watching ‪@VE6BGT‬ and using info from https://bobatkins.com/radio/10Ghz_EME…

Motor driver is a Roboclaw 2x7A https://www.basicmicro.com/Roboclaw-2…

Power is a 24V Bioenno LiFePO4 battery https://www.bioennopower.com

For initial setup, I’ve been using the software provided by Basicmicro to control the drives. Basicmicro provides a Python API and I’m using that along with custom code to emulate the Easycomm protocol and interface with PST Rotator (I’ll provide more software/radio details in the future).

Minimal ADALM-Pluto 10GHz Transceiver

Taking advantage of the 3rd harmonic output of the ADALM-Pluto, and a Ku-band LNB, a very simple full duplex 10GHz transceiver can be constructed.

ADALM-Pluto https://www.analog.com/en/resources/e…

Bullseye LNB https://othernet.is/products/bullseye…

VHF-7150+ https://www.minicircuits.com/WebStore…

Generic Bias-Tee https://www.amazon.com/10MHz-6GHz-Bro…

SDRangel https://www.sdrangel.org

Amphenol connector (aka my stub antenna…) https://www.mouser.com/ProductDetail/…

LoRa 10GHz Ham Radio

Bench experiment using LoRa transceivers on the 70cm ham band (~433 MHz) as IF radios, up and down converting to/from the 3cm (~10GHz) ham band.

Inspired by work being done at Open Research Institute (https://www.openresearch.institute/)

It could be really interesting to have some LoRa APRS iGate stations/beacons on at 10GHz to promote experimentation. (https://github.com/lora-aprs/LoRa_APRS_iGate)

10GHz Downconverter with Mini-Circuits blocks

The primary goal is to be able to roughly calibrate some signal sources in the 8.4GHz to 10GHz range with known calibrated equipment at lower frequencies. I have a Tektronix RSA306B Spectrum Analyzer, but a receiver with the appropriate coverage would work.

Signal paths (really need a diagram!)

Uncalibrated 10.5 GHz Source : 30dB Attenuator : High Pass Filter : Mixer RF IN Calibrated Oscillator at 5GHz : Frequency Doubler : Mixer LO IN Mixer IF Out : Spectrum Analyzer (centered at 500MHz)

Tektronix RSA306B Spectrum analyzer (good to 6 GHz) https://www.tek.com/spectrum-analyzer/rsa306

Aaronia BPSG 6 Signal Generator (I have the OEM version – good to 6 GHz) https://aaronia.com/signal-generators/bpsg-series-compact/

Mini-Circuits shopping list:

VHF-7150+ High pass filter https://www.minicircuits.com/WebStore/dashboard.html?model=VHF-7150%2B

ZX05-24MH-S+ Doubly balanced mixer https://www.minicircuits.com/WebStore/dashboard.html?model=ZX05-24MH-S%2B

ZX90-2-50-S+ Frequency multiplier https://www.minicircuits.com/WebStore/dashboard.html?model=ZX90-2-50-S%2B

141-6SM+ 6″ cables https://www.minicircuits.com/WebStore/dashboard.html?model=141-6SM%2B

Bird 30dB Attenuator

Uncalibrated 10.5GHz signal source https://www.amazon.com/Microwave-10-525GHz-Doppler-Detector-arduino/dp/B089KG2TK9

Reference article about the above source http://www.arrl.org/files/file/QEX_Next_Issue/2015/May-Jun_2015/Wadsworth.pdf

Driving Straight and Turning with the MPU-6050

 

Presentation

Make your robot drive straight (ok, well, straighter) using the MPU-6050 6-Degrees-of-Freedom accelerometer/gyro.

This is another presentation given to the Nashua Robot Builders.

Here’s the Arduino code: _2020Bot_MUP6050.ino.zip

Please note… the Arduino code isn’t up to my usual standards, but it will show you a few things.  Pay attention to the required libraries (links are in the comments).

Here’s a zip file for the Apple Keynote version: Driving Straight and Turning

2020 Bot Motor Control Examples

I just updated the 2020 Bot Arduino Library to include a couple motor control examples: https://github.com/robojay/_2020Bot_Library

One uses the delay() function between motions. This is great for ease of understanding, but not so great to use in practice. The delay() function blocks the robot from doing most other tasks until the time expires.

The second example uses millis() and a timestamp to step through the motions. This lets the robot do other important tasks, such as blinking the LED, while still controlling motions.

IR Proximity Sensing

Proximity sensing for your robot.

Proximity sensing for your robot.

When you build a robot, it’s nice to have layers of sensors.  You can think of the layers either top down (maybe starting with a 3D laser scanner), or from the bottom up (are my motors stalled?).  Proximity sensing sits on one of the lower layers, and generally is used as “Hey, there’s something near me, and it might be in general direction X”.

Using infrared LEDs and detectors is an inexpensive and common approach to basic proximity sensing.

I did a presentation on this topic for the Nashua Robot Builders.  You can find the slides and demo code at https://github.com/robojay/IrProximityDemo