Debug: Database connection successful Robotics Education / Science, Technology, and Astronomy / New Mars Forums

New Mars Forums

Official discussion forum of The Mars Society and MarsNews.com

You are not logged in.

Announcement

Announcement: This forum is accepting new registrations via email. Please see Recruiting Topic for additional information. Write newmarsmember[at_symbol]gmail.com.

#1 2021-09-15 18:02:46

tahanson43206
Moderator
Registered: 2018-04-27
Posts: 22,897

Robotics Education

For SpaceNut ... I asked FluxBB if we had any topics with the words "robot*" and "education"

It came up blank so I am offering this topic for posts about opportunities that are now or will become available for individuals to learn about robots at the home study level.

I am NOT promoting any of the products that will (hopefully) show up in this topic.

My intention is to try to make available links to opportunities, and to provide a place for forum members to report on their experiences.

We (forum) are on the verge of embarking upon support of a challenging educational activity involving robotics.

Whether a specific activity happens or not is irrelevant.  Anyone interested in robotics can gain valuable experience with consumer grade products that work with tiny computers (Arduino, Raspberry Pi, etc)

To lead off, I'll post an ad that has been hitting my Internet feed ever since I asked Google what is going on with consumer grade robotics:

There is another ad that includes a video camera in the package.  I'll report that one as soon as it shows up again.

(th)

Offline

Like button can go here

#2 2021-09-15 18:27:39

SpaceNut
Administrator
From: New Hampshire
Registered: 2004-07-22
Posts: 29,743

Re: Robotics Education

Many a high school and other higher levels of education do have after school programs as part of stem out reach that teach about robotics.
The Portsmouth Naval Shipyard does such out reach to high schools to build min submarines from pvc pipe and small motors called sea perch.

fdaf7a35-fc27-42d3-a4ea-5aabfdc77544-Pic_2_-_Angela_Hampson.jpg?width=660&height=442&fit=crop&format=pjpg&auto=webp

navsea_banner_stem.jpg?ver=BWXgLDbvulaoL6446Zwotg%3d%3d

STEM Outreach Program comes full circle at PNSY

https://www.facebook.com/SeacoastSeaPerch/

Offline

Like button can go here

#3 2021-09-15 22:12:16

tahanson43206
Moderator
Registered: 2018-04-27
Posts: 22,897

Re: Robotics Education

Here is the second robot education kit that I've been seeing in the Internet feed:

https://www.banggood.com/Xiao-R-DIY-Sma … 3616dd08fe

This one has a web came mounted in the "head" so the operator can see the work being done remotely.

(th)

Offline

Like button can go here

#4 2025-10-20 15:30:32

tahanson43206
Moderator
Registered: 2018-04-27
Posts: 22,897

Re: Robotics Education

This topic goes back to 2021 ... Void has recently opened another topic about robots, and I am inspired to reopen this one.

I have two robot arm systems available to describe for NewMars members who might be interested in hardware rather than just words about robots (and the occasional picture).

One is a fully constructed robot arm kit that I bought thinking that I would have the energy and time to write software to allow the robot to be controlled by a Sony game controller.  It turned out that the work required is more than I had available.  Everything has been done already. There is information on how to create commands to move the robot arms and components, and there is information about how to decode the signals from the game controller.  I have the Raspberry Pi computer to perform the translation. What I did not have is the time and energy to connect all those pieces.

However, the Lynxmotion device ** does ** work with a program called FlowArm. FlowArm runs on Microsoft computers.

The new machine is sold with a controller than can accept commands provided via USB cable.  Unlike the Lynxmotion which arrived fully assembled, this one arrived in a box dense with parts and tiny tools to assemble them.   

If anyone is interested in taking a look at the kit as it is sold, the kit is sold by Amazon for www.cokoimo.com

CKK0017 is the SKU ....

And here is the pdf file with instructions for assembly of the kit.  I expect it will take a couple of weeks to finish this, assuming work one afternoon a week.
https://www.dropbox.com/scl/fi/minlqgjh … bbqb3&dl=0

Update: It only took three days to follow the PDF instructions and complete the assembly. This PDF system for guiding assembly is very well done, and on balance, better than a paper printed manual would have been.  The only caveat is that the assembly had to be done on a table in front of the monitor, but that system certainly does work.

I powered up the machine, but the onboard controller only beeped and lit four LED's to show it is alive.

(th)

Offline

Like button can go here

#5 Yesterday 15:14:45

tahanson43206
Moderator
Registered: 2018-04-27
Posts: 22,897

Re: Robotics Education

The assembly of the kit is complete. See post #4 for a link to the assembly instructions.

I didn't know what to expect when I powered up the equipment, but not a whole lot happened.

The power light came on, and shortly afterward a beep began to sound about every 15 seconds, and some white LED's at the front of the controller board lit up and stayed lit.  I assume from this that there is no code in the controller.  I was afraid of that, but hoped the unit would arrive from the factory with a minimal check out code installed to allow the operator to use the PS2 game controller to move the robot arm and to open and close the jaws. 

I'm planning to write the company (cokoino) to see if they have a suggestion for what to do next.

the kit is designed to work with an arduino, so it seems likely I'll have to invest in one.

Update: I heard back from cokoino ... there is software on the controller, installed at the factory to test functionality. I'm hoping cokoino will send instructions on how to interact with that software. However, the actual instructions to operate the equipment must be delivered via USB  cable from a computer such as an Arduino, but apparently any computer that can generate the desired commands.

(th)

Offline

Like button can go here

#6 Yesterday 15:38:21

tahanson43206
Moderator
Registered: 2018-04-27
Posts: 22,897

Re: Robotics Education

Message to cokoino about CKK0017 robot arm kit:

Hello to the engineers, administrators and writers who created the CKK0017

I am an adult evaluating this kit for Christmas season, for teenagers.

I am happy to report that your instructions for assembly of the kit are excellent!

However, I will counsel parents that the process of building this kit requires fine motor skills and meticulous attention to detail.

I found the listing of parts needed to be most helpful, with the caveat that toward the end of the project, the builder may have to make some educated guesses.

All the parts needed were present, and I appreciated the spares that were provided.  In my case, I didn't lose any parts, or strip any threads, but I can easily imagine that happening, so the spares are most welcome!

I understood that the kit is designed to work with Arduino, but I was disappointed to find that the control board is not preloaded with a minimal program to exercise the arm using the PS/2 controller.

My opening question for you is this:

Given that the system powers up and beeps at me, showing all four LED lights in bright white, What do I do next?

If you provided a chapter in the tutorial that covers that, I missed it.

Is there a way to run the system without investing in an Arduino?

***

In working with me, please consider that I am an active developer in Linux and Windows environments, and I have worked with single board computers over the years, including the Atmel.

What I'm wondering is: Can I drop a demo program into the controller and let it operate with the PS/2, or do I need the Arduino to get anything useful to happen?

Thanks (again) for the quality of the product, and the terrific assembly instructions!

tahanson43206

(Moderator for NewMars.com/forums, as tahanson43206)

I've opened a topic about the CKK0017 for our members.

(th)

I'll report if I hear back.

(th)

Offline

Like button can go here

#7 Today 11:56:28

tahanson43206
Moderator
Registered: 2018-04-27
Posts: 22,897

Re: Robotics Education

I heard back from cokoino!  I am hoping they will clarify how to interface with the test program that is burned into the onboard controller.

In the mean time, I asked Google's Gemini for information about Arduino emulators that may run on various computers.  Here is the transcript:

Arduino Emulators for Cross-Platform Use

Conversation with Gemini

Arduino Emulator for any OS - Hello Again! And ** thanks ** for all the assistance you have provided for a great number of requests! - Today I'm hoping your search skills and connections will be helpful! I have received and assembled a robot kit that was designed to interface with an Arduino. I'm wondering if there might be Arduino emulators that run on other operating systems, such as Windows, Linux and Android?
***
That's a great question! Yes, there are several excellent Arduino emulators and simulators that run on different operating systems, including web-based options that work on Windows, Linux, and Android devices (via a web browser).
***
Simulators are an ideal way to develop, test, and debug code for your robot kit before uploading it to the physical Arduino board.

Recommended Cross-Platform Simulators
For maximum compatibility across Windows, Linux, and Android (using a web browser), the best solutions are generally online, browser-based simulators.

1. Wokwi (Web-Based)
Compatibility: Excellent for any OS with a modern web browser (Windows, Linux, macOS, Android, iOS).

Key Features:

One of the most advanced online simulators.

Supports popular boards like Arduino Uno, Mega, Nano, ESP32, and Raspberry Pi Pico.

Allows you to run and debug real Arduino code (C/C++ and MicroPython) directly in the browser.

Large and growing library of simulated components like displays, sensors, motors, and even Wi-Fi.

Great for sharing projects.

2. Tinkercad Circuits (Web-Based)
Compatibility: Works on any OS with a web browser.

Key Features:

Extremely beginner-friendly with a drag-and-drop interface.

Developed by Autodesk.

Simulates basic circuits with a visual breadboard, allowing you to connect components and write code (block-based or text-based Arduino C++).

Excellent for learning the basics of wiring and coding simultaneously.

Offline and OS-Specific Options

If you prefer a dedicated desktop application, some options offer cross-platform or Windows-specific offline support:

1. SimulIDE (Offline: Windows, Linux)
Compatibility: Windows, Linux. (It can often be run on macOS using compatibility layers like Wine, but it's not natively supported.)

Key Features:

A free and open-source real-time electronics simulator.

Supports various microcontrollers, including Arduino (by loading the compiled .hex file).

Allows simulation of logic and analog circuits.

2. UnoArduSim (Offline: Windows)
Compatibility: Windows.

Key Features:

Focuses purely on code logic and debugging for the Arduino Uno board.

Great for students learning programming logic and testing code before moving to hardware.

3. Proteus VSM (Offline: Windows)
Compatibility: Windows only.

Key Features:

A professional-level simulation suite (paid software).

It offers powerful features for designing, simulating, and debugging microcontrollers and complex circuits, including Arduino shields and virtual instruments.
***
Thank you for this encouraging list! I'll share your report with others who (I am hoping) will find it encouraging to know that it is NOT necessary to have an Arduino. A laptop running an emulator should be able to create commands that can be fed into the USB port of the robot kit.
***
That's an insightful observation! You are absolutely correct—it's often possible to use an Arduino emulator/simulator on a laptop to generate commands and feed them to a robot kit's USB port, bypassing the need for a physical Arduino board for the control signal itself.

This approach leverages the underlying communication protocol, which is typically Serial Communication (or UART) transmitted over the USB cable via a virtual COM port.

Here's a breakdown of the concept and what makes it work:

How Emulator-to-Robot Control Works

The key to this method is that the robot kit's control board (or the on-board chip) often communicates via a Serial port, and when connected to a computer via USB, it registers as a virtual COM port.

Emulator/Simulator Output: Arduino simulators (like SimulIDE, Wokwi, or even custom code in languages like Python/MATLAB/Scilab) are often designed to output serial data just as a real Arduino would.

Virtual Serial Port Bridge: To connect the simulated output to the real USB port, you typically need a Virtual Serial Port Emulator/Null-modem emulator program (like com0com on Windows or socat/tty0tty on Linux). This software creates a pair of virtual COM ports on your laptop.

The simulator connects to one virtual port (e.g., COM10).

The robot kit's USB port (which is a real port) or a utility that reads/writes to it is then targeted by the commands coming out of the other virtual port (e.g., COM11) that is bridged to the first.

Command Interpretation: The robot kit's internal firmware (the program running on the robot's main chip) must be designed to listen for and interpret the specific serial data commands (e.g., a simple string like "MOVE_FORWARD" or a specific byte sequence) sent from the laptop's virtual port.

Key Considerations
Robot Firmware is Still Needed: The robot's control board still needs its own firmware (the program that came with the kit or one you upload) to function. This firmware is responsible for:

Initializing the motors and sensors.

Listening to the serial port for incoming commands.

Translating those commands into physical actions (like setting motor speeds).

Virtual Port Setup: The most technically challenging step is setting up and configuring the virtual COM port bridge on the laptop to seamlessly route the simulated serial output to the USB port that the robot is listening on.

Protocol Matching: The data format (baud rate, data bits, parity, stop bits) and the command structure (the actual data strings/bytes) used by your emulator must exactly match what the robot kit's firmware is expecting to receive.

Your plan is very sound and provides a great way to develop and test control logic without dedicating a physical Arduino board to the task. It's an excellent, encouraging point to share! ?
***
Thank you for the reminder that the robot kit must include a controller, and indeed, both the devices I have on had possess controller boards. One operates with a connection to a Windows PC running FlowArm software, and the other is designed for Arduino.
***
That's excellent information! Knowing that your robot kits use two distinct control mechanisms simplifies the approach, as the communication protocol is the main target.

Here's how your non-Arduino/emulator plan applies to each of your robot kits:

1. The FlowArm-Controlled Robot (e.g., Lynxmotion, etc.)
For the robot that runs with the FlowArm software, the task is much more about reverse engineering the protocol than emulating an Arduino.

The Controller Board: This robot likely contains a specialized servo controller board (like the Lynxmotion SSC-32U), which is essentially a dedicated microcontroller that is pre-programmed to listen for specific commands.

The Protocol: The FlowArm software sends commands to this board over the USB/serial port using a specific text-based or binary-based protocol. For example, the SSC-32 protocol is often a simple ASCII command structure like:

#<channel> P<pulse_width> S<speed> <CR> (where <CR> is a carriage return).

Your Solution: You don't need an Arduino emulator. Instead, you can use a program on your laptop (written in Python, C#, or even a simple serial terminal) to send those exact same commands directly to the robot's COM port.

Goal: Write a Python script (using the pyserial library) or a similar utility that crafts and sends the required protocol strings to the port.

2. The Arduino-Designed Robot
For the robot designed for Arduino, your emulator plan is a perfect fit.

The Controller Board: This board is an Arduino or an Arduino-compatible microcontroller. It is designed to be programmed with an Arduino sketch.

The Protocol: When you use an Arduino to control a robot, the program running on the board is often set up to listen for commands via its Serial object (which is routed through the USB cable). The expected commands are whatever you programmed the sketch to recognize (e.g., the string "F" for forward, or a comma-separated value like "90,90,90" for servo positions).

Your Solution:

Get/Write a Serial-Listening Sketch: Ensure the Arduino-compatible board has a sketch uploaded that makes it move based on serial input.

Use an Emulator/Custom PC Code: You can then use:

An Arduino Simulator + Virtual COM Port Utility (as previously discussed).

A simple PC program (like a Python script with pyserial) to generate and send the commands (e.g., ser.write("F".encode())) to the robot's COM port, completely bypassing a physical Arduino in the development loop.

In both cases, you are correct: the key is understanding the serial communication protocol, not the physical presence of the Arduino board.
***
Thank you again for this helpful information! I'll share your observations and comments.
***
You're welcome! I'm glad to help. Please let me know if any further questions arise as you proceed with implementing your serial control solutions. Good luck!

(th)

Offline

Like button can go here

Board footer

Powered by FluxBB