LEGO Mindstorms NXT Bin Emptying Robot – Mark III    Send article as PDF   
This is a LEGO Mindstorms NXT “Bin Emptying Robot Mark III”. It is part of a larger project I have been working on, my “Ball Sorting Factory“. A forklift delivers full Bins of balls to be emptied. The Emptied bins are then taken away to the processing facility to be refilled. The Mark II version worked well, but was a little unreliable, unlike this version. Like the previous version, it uses a “Ball Repository” to store, mix and reload the Production Line with Balls when the “Ball Sorting Factory” needs them.

Bin Emptying Machine MarkIII

The major difference with this version is electronic. It uses a BETA Version of the soon to be released [SensorMUX] is a multiplexer which allows the connect of 4x NXT sensors to single NXT port. The [SensorMUX] can connect any sensor designed for Mindstorms NXT, both LEGO and/or third party sensors. The [SensorMUX] is requires an external battery source supplying a voltage range between 6 and 8.4 volts to operate. View my previous article, “Power the Mindsensors SensorMUX from a 9V Battery” for details on a simple power supply derived from a 9v (PP3 battery) for the [SensorMUX].

Bin Emptying Machine Mark III

I am really impressed with the [SensorMUX], and its capabilities. It is a must have for all serious LEGO Mindstorms NXT users. It is especially useful when using multiple analogue sensors, such as combining Touch and Light Sensors. With this project, the [SensorMUX] is used to multiplex:

  • 3x RCX type Touch Sensors
  • 1x [laser] Range Finder

Mindsensors SensorMUX

The only minor down side I have found is the requirement of an external power source for the [SensorMUX]. This said, the current drain is very low, so you can use a low amp/hour rated standard 9v (PP3 battery) or 7.4v Li-Po Battery.

Notes to Remember:

You must keep in mind that the [SensorMUX] is not capable of switching quickly between it’s Sensor Channels. When using it with a robot to navigate around with one sensor connected to Channel 1. Then when the robot gets to a certain point, it switch to another sensor on Channel 2 for a new specific task, before then do something else.

Also you can’t have two (or more) tasks running at once, accessing seperate [SensorMUX] Channels. It is not possible to have a separate task chatting with the [SensorMUX] to fetch Battery Information, while another task is switching Channels to chat with sensors as well. The Battery Information is access via virtual channel 0, by querying the [SensorMUX] using I2C commands.

A big thanks goes out to Xander Soldaat for producing the [robotc] Third Party Driver suite. Also for his quick response to fixing the BUGS I uncovered in his [SensorMUX] Driver. It’s all part of the fun and frustration associated with BETA TESTING new LEGO Mindstorms NXT Sensors and other add-ons.

RobotC Source Code:


Previous Post

Power the Mindsensors SensorMUX from a 9V Battery

The SensorMUX is a multiplexer to connect 4x NXT sensors to single NXT port. The multiplexer can connect any sensor designed for Mindstorms NXT, both LEGO and/or third party sensors. ... Read more

Next Post

LEGO Mindstorms NXT Rotacaster Bug Bot

I originally built this LEGO Mindstorms NXT Bug Bot Robot as part of a display at the TAZ-Brick ( Collector Clubs Brixhibition North. The robot proved a hit with the ... Read more

Short URL:

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Do NOT follow this link or you will be banned from the site!