ATCART

The ATCart was originally from a wheelchair component. We found out that this motor has an advantage to carry loads in any kind of real life scenario, because as you know it was designed for wheelchair, but when it was it the hand of engineer…it would never turn back to wheelchair as it was!

Hardware

The default configuration as wheelchair includes 2xBrushless wheel hub motor, an unknown ESC, and joystick. We got this unit from China and all the information we know are listed below

  • 18.5 – 30.5V operating voltage (24V is recommended)
  • 45A max current
  • 3kg for one wheel
  • max rotational speed is around 144RPM (from tachometer)

And the supplier wasn’t happy to share the source code of this device 🙁 . So I decided to take a look inside about how the joystick and ESC communicating by myself. There are four wires out from joystick so my initial guess is that two of these should be power line and the other left are control line (probably UART). I measured the voltage of the control line to make sure whether it is 3.3V or 5V. And it’s just 5V, which quite easily to handle with, because most of Arduino’s UART outputs 5V directly. So I was monitoring the packets and initialization process of these two devices by using Logic Analyzer. After a long monitoring, I finally got understand the meaning of each packet which send back and forth and how’s the wheel interact. I did the documentation about how I did that on my Github repo, please go check it out.

From the hacking-solution, we can replace the joystick with other microcontroller and mimic the same packets as the joystick did, so we are trying to to trick the ESC that the joystick still existed, but in the fact we replaced it to something else. Our company’s partner, Running Electronics designed the interface board for us, so we call it as “ATCart Interface”.

The hacking-code was implemented inside this PSOC microcontroller and also some extra features to receive various input method, for example, PWM, SBUS or original joystick. This is very cool because in case we want to control the ATCart from flight controller like Cube pilot, we just need to plug SERVO OUTPUT from Cube to this PWM_IN for each wheel like regular ESC on the market. Moreover, in case we don’t need additional flight controller, but just want to control it manually like RC car. We just need to plug the SBUS_IN to your favorite radio receiver, then you are ready to drive it around from your transmitter! If there is someone want to control the cart by sitting on it, then just plug regular joystick on joystick port, then you can switch which device is going to take control the cart by using channel 5 on your transmitter.

Wiring of ATCart Interface

SBUS Mode and joystick for an option

(Mixing program is implemented)

SBUS Mode with 4WD cart

(Mixing program is implemented)

PWM Mode (drive each wheel individually)

Applications

Because of the size and payload, it can be used in many of real world applications. One of our customer GINZA FARM is using this cart for their agriculture robot development. We are developing a delivery robot from this ATCart to serve foods and drink to the customer at Muze Park. There is a research project in SAKA University that using this ATCart for human-following for farmer who harvest onions on the farm.

We can design the frame to match with any purpose and requirement for each project.