This article comes from a fan submission
Curious Yabin (WeChat: bin737257268)
Many people love small animals (not just love small animals, but also want to eat them, just kidding), such as little puppies or kittens! Now I want to share a fun gadget! A ball-shaped machine similar to Sphero that can be used to tease cats and walk dogs.
In May 2016, I saw a remote-controlled ball made by Taige, who made the BB-8 robot. Coincidentally, in August 2016, a stray kitten came to my house, so cute! ˏ₍•ɞ•₎ˎ I was learning SolidWorks 3D modeling, so I decided to try making a teasing ball for cats myself.

▼
3D modeling effect of the ball:

While learning SolidWorks, I modeled intermittently and it took me over a month. After finishing the model, I modified it several times until I was satisfied.
Parts List:
Name
Quantity
8CM diameter acrylic ball
1 (suggest buying a few more as spares)
N20 reduction motor
(speed 300RPM/6V)
2
7.4V small lithium battery 602540
(SM interface)
1
Dual-channel motor driver board drv8833
1
Plastic eye wheel
3
Arduino Nano (without soldered pins)
1
HC05 or HC06 Bluetooth module
1
Rubber ring
2
Dupont wire
Several
M2 nuts
14
3D printed parts
Print according to STL file instructions
(print several spare wheels)

The rubber ring is bought from this type of rubber ring removed from the wheel, with an outer diameter of about 28mm, an inner diameter of 25mm, and a wire diameter of 3mm.

If you want to do it yourself, purchase the electronic components mentioned above online. Here I will talk about the pitfalls encountered while making the small ball:
-
I bought Bluno Nano, 3.7v lithium battery, and HR8833 micro motor driver board with DF activity cash coupons at DF store, but found that none of them could be used. It turns out that the integrated Bluetooth function of Bluno Nano is not a universal Bluetooth, and the Bluetooth software must use the official app, which does not support password pairing;
-
The HR8833 driver board requires two power inputs of 5V or more to work, which took me almost a week to figure out. Each board has its own quirks! The 3.7v battery causes the voltage to drop at the moment the motor starts, causing the Bluetooth to disconnect automatically and the ball to go out of control, rolling and stopping, so I switched to a 7.4v lithium battery and it worked fine.
Wiring diagram:
The wiring is very simple, just like the wiring method of a Bluetooth car

Assembling parts:
Version 1 had small internal dimensions, leaving a gap between the eye wheels and the shell:


Version 2 modified the modeling dimensions and had someone reprint it:





Don’t install the Bluetooth module yet, first upload the program, test the motor direction by sending characters through the Arduino IDE serial port. If the direction is incorrect, modify the digitalWrite(INX,HIGH or LOW); test it, then install the Bluetooth module.
After the Bluetooth module is set up, assemble it onto the Arduino board.

Assembly completed

Use zip ties to secure the battery

Completed

Remote control App demonstration:

The default custom encoding values are: Forward 1, Backward 2, Left Turn 3, Right Turn 4, Stop 0
Slide the virtual joystick up – forward, down – backward, left – left turn, right – right turn, release to stop; it can also be used as a remote control app for other Bluetooth cars.
Ball demonstration:
After finishing the small ball and the Android program, I felt it was not fun enough, and I thought I could also utilize the computer, so I spent two days studying Processing and wrote a program for Bluetooth remote control of the small ball.
Usage: first connect the Bluetooth module to the computer to get the serial port (check in Device Manager), for example, COM3 (it may vary on different computers), modify the String arduinoPort = “COM3”; then run the program.
Processing program demonstration:

As shown, press the keyboard arrow keys to go up – forward, down – backward, left – left turn, right – right turn, release to stop


▲
Unfortunately, the little yellow cat went missing; it had been missing for a month when I returned home during the May Day holiday. So there are no cat teasing videos to show everyone.
But I still want to thank those who helped me (Taige and SC), because I needed to find friends to help since I didn’t have a 3D printer!
I wish everyone a happy timeヽ(•‿•)ノ. I know my skills are not enough; I just have a dream – to make everyone fall in love with technology DIY together. (My personal website is in the Read Original section, and everyone is welcome to visit!)