element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Robots with Wheels
  • Challenges & Projects
  • Project14
  • Robots with Wheels
  • More
  • Cancel
Robots with Wheels
Blog Cardboard Robot With Wheels: A BBC micro:bit STEM project
  • Blog
  • Forum
  • Documents
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Robots with Wheels to participate - click to join for free!
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: balearicdynamics
  • Date Created: 9 Apr 2018 9:26 AM Date Created
  • Views 5027 views
  • Likes 16 likes
  • Comments 8 comments
  • micro geared motor
  • educational
  • dc motor
  • micro:bit
  • stem
  • advanced micro:bit projects
  • motos controller
  • robot
  • morobotsch
  • wheels
  • advanced_microbit_projects
  • robotwheelsch
  • javascript
  • dc dc converters
  • blocks
  • cardboard
  • 3d print
Related
Recommended

Cardboard Robot With Wheels: A BBC micro:bit STEM project

balearicdynamics
balearicdynamics
9 Apr 2018

Introduction

image

All we know that the BBC micro: bit  is a board strongly oriented to the education, as well as the programming methodology based on Blocks, something similar to the Scratch language is particularly adaptable to teach programming, microcontrollers, and robotics to children, teaching STEM in schools etc. But the potential of this board is far beyond a small game. Recently I had the opportunity to develop some micro:bit based projects preparing a series of workshop that - hopefully  - will start by the end of this month.

So, I started exploring more in depth the possibilities of the micro:bit. As a matter of fact we should consider that there is a minimum age that has sense t learn programming but there is not a maximum image The children start with simple programs, connecting apples and bananas; then they are involved and start thinking about something more complex, the exploration of the world of electronic and programming goes so far...

 

This project is the first one that - compared to what we are used to seeing based on the micro:bit - can be considered a bit more advanced. By the way, I have also thought how much it was difficult, the same project, if developed with an Arduino board, just to mention the most popular: BBC micro:bit demonstrated its incredible power and completeness. In my opinion, this is the fir micro controller board of a new generation, based on a totally different concept than the previous generation of microcontrollers for maker.

Last but not least, I should say that I have enjoyed a lot making this project, developing the software and playing with it

 

The material choice: a must

image

The idea beside the Cardboard robot with wheels lays over two concepts:

  • Using as much as possible recycling material where cardboard is king
  • Create projects that - under an adult supervision - are easy to make seeing in-depth how things work

One of the reasons I love the approach offered by products like the Inventor's Kit by Kitronik against the "assemble in five minutes" projects is that the first ones leave full space to the creativity.

 

Non-electronic Components

  • Cardboard from a recycled package box
  • Some paper clips
  • Cable ties
  • Rubber bands

 

Tools

  • A soldering iron
  • A hot glue gun
  • Scissors
  • Cutter
  • Ruler
  • Ballpoint pen
  • Adhesive tape

 

3D Printed components

image

It is possible to reach almost the same result without using a 3D printer, but the rotating parts and some small mechanics it was worth to make them better.

The images below shows the components used for this project:

 

{gallery} 3d Printed Components

image

Front free wheels

image

3D printing the driving wheels

image

3D printed driving wheels and motors support

image

The robot on wheels 3D printed components

 

The electronic parts

image

The micro:bit has been inserted into the card edge micro:bit support (from Kitronik) as many pins should be used to drive the motor controller

 

Motors

Motion is provided by two micro geared DC motors by Kitronic. As the motors need 5-6 V to run it was necessary to build a 9V battery pack and two separate power lines for the motors and the micro:bitimage

 

Motor Controller

I have used a cheap motor controller from GearBest working well at low voltage (min 5V). This controller is very easy to connect and no soldering is needed. This driver can control a single stepper motor or two independent DC motors.image

 

Battery Pack

The super-cheap solution iI found has been a 0,50 Euro battery holder (bought at a local store) with 6xAA 1,5 V 1000 mA rechargeable batteries. I have also soldered the wires with a power switch. Note that from the power switch the power line has been doubled: a couple of wires go to the motor controller to power the motors and the controller itself and the second couple power a DC/DC step-down to power the micro:bitimage

 

DC/DC Converter

As shown in the side image, the DC/DC converter has been regulated to 3.0V power-out and soldered to the micro:bit power connector. This converter based on LM2596 can be bought on Amazon for about 7 Euro (4 pieces)image

 

1-2-3 ... Building the Cardboard Robot on Wheels

The building process does not require more than one hour or less.

 

Step 1. Prepare the Wheels

The two freewheels (left in the first rendering below), I have decided to make them a bit smaller than the driving wheels and put them in front where there is less weight are built with three 3D printer pieces.

imageimage

The right rendered above image shows how to assemble the front freewheel. The support block will be hot glued to the base of the chassis and the axis should be hot glued inside the block, leaving the wheel free to rotate.

imageimage

The motors are glued on the "U" support and the wheels are glued to the motor axis. As the micromotors are geared, the direct traction is sufficient to move the entire system. The image below shows the motor wheels assembled.

imageimage

Then motors are tested (and the wheels well centred to the axis(

image

 

Step 2. Make the Chassis and assemble the wheels

The images below illustrate the sequence of making the cardboard chassis with the four wheels blocks hot glued (again!) to the bottom

 

{gallery} Assembling the Chassis and the wheels

image

The cardboard base of the chassis

image

The finished chassis. Note the triangular supports to keep in place the vertical part.

image

Detail of the glued supports

image

The freewheels glued to the front bottom of the chassis. Be careful to align both blocks, the wheels should be parallel!

image

The front wheels from the top

image

The motor wheels glued to the back of the chassis. Due to the smaller diameter of the freewheels, motors have been fixed on the top side. This solution also avoid damage to the motors while the vehicle is moving

image

Two cable ties will keep in place the battery pack. As this is the heavies components it is fixed the nearest possible to the moving wheels.

 

Step 3. Adding the Electronics

The last step is gluing, gluing and gluing the electronic parts we have wired together before.

 

image

Glue a cardboard support to the back of the micro:bit connector

image

Then glue all to the front side of the vehicle. The support leaves space to the back of the board and make easy to disassemble the connector edge if needed.

image

Then, glue to the back of the front side the motor controller and the DC/DC converter to the bottom of the chassis

image

The battery pack kept in place with a paper-clip and a rubber band

 

The Software

The software has been developed with Blocks and the full project is published freely available on the micro:bit Let's Code website.

Alternatively, this is the Java version of the source:

 

control.onEvent(EventBusSource.MES_DPAD_CONTROLLER_ID, EventBusValue.MICROBIT_EVT_ANY, () => {if (control.eventValue() == EventBusValue.MES_DPAD_BUTTON_A_DOWN) {
images.iconImage(IconNames.SmallSquare).showImage(0)
  } else if (control.eventValue() == EventBusValue.MES_DPAD_BUTTON_A_UP) {
images.iconImage(IconNames.Square).showImage(0)
pins.digitalWritePin(DigitalPin.P13, 0)
pins.digitalWritePin(DigitalPin.P14, 0)
pins.digitalWritePin(DigitalPin.P15, 0)
pins.digitalWritePin(DigitalPin.P16, 0)
  } else if (control.eventValue() == EventBusValue.MES_DPAD_BUTTON_B_DOWN) {
images.iconImage(IconNames.SmallSquare).showImage(0)
pins.digitalWritePin(DigitalPin.P13, 0)
pins.digitalWritePin(DigitalPin.P14, 1)
pins.digitalWritePin(DigitalPin.P15, 0)
pins.digitalWritePin(DigitalPin.P16, 1)
  } else if (control.eventValue() == EventBusValue.MES_DPAD_BUTTON_B_UP) {
images.iconImage(IconNames.Square).showImage(0)
pins.digitalWritePin(DigitalPin.P13, 0)
pins.digitalWritePin(DigitalPin.P14, 0)
pins.digitalWritePin(DigitalPin.P15, 0)
pins.digitalWritePin(DigitalPin.P16, 0)
  } else if (control.eventValue() == EventBusValue.MES_DPAD_BUTTON_C_DOWN) {
images.iconImage(IconNames.Triangle).showImage(0)
pins.digitalWritePin(DigitalPin.P13, 0)
pins.digitalWritePin(DigitalPin.P14, 1)
pins.digitalWritePin(DigitalPin.P15, 1)
pins.digitalWritePin(DigitalPin.P16, 0)
  } else if (control.eventValue() == EventBusValue.MES_DPAD_BUTTON_C_UP) {
images.iconImage(IconNames.Square).showImage(0)
pins.digitalWritePin(DigitalPin.P13, 0)
pins.digitalWritePin(DigitalPin.P14, 0)
pins.digitalWritePin(DigitalPin.P15, 0)
pins.digitalWritePin(DigitalPin.P16, 0)
  } else if (control.eventValue() == EventBusValue.MES_DPAD_BUTTON_D_DOWN) {
images.iconImage(IconNames.Triangle).showImage(0)
pins.digitalWritePin(DigitalPin.P13, 1)
pins.digitalWritePin(DigitalPin.P14, 0)
pins.digitalWritePin(DigitalPin.P15, 0)
pins.digitalWritePin(DigitalPin.P16, 1)
  } else if (control.eventValue() == EventBusValue.MES_DPAD_BUTTON_D_UP) {
images.iconImage(IconNames.Square).showImage(0)
pins.digitalWritePin(DigitalPin.P13, 0)
pins.digitalWritePin(DigitalPin.P14, 0)
pins.digitalWritePin(DigitalPin.P15, 0)
pins.digitalWritePin(DigitalPin.P16, 0)
  }
})
bluetooth.onBluetoothConnected(() => {
basic.showLeds(`
  # # . # #
  # # . # #
  . . # . .
  # . . . #
  . # # # .
  `)
})
bluetooth.onBluetoothDisconnected(() => {
basic.showLeds(`
  # # . # #
  # # . # #
  . . # . .
  . # # # .
  # . . . #
  `)
})
images.iconImage(IconNames.Target).showImage(0)
basic.pause(1000)

 

Notable aspects

The entire application - Blocks allows this easily! - is event-driven. Adding the Kitronik library as explained in their site https://www.kitronik.co.uk/blog/adding-bluetooth-remote-control-move-mini/

The library associated a series of Bluetooth events to any kind of instruction you want to add. This made possible to control via Bluetooth the vehicle with the open source application for Android. The events behavior are explained in the Kitronik library, full source and documentation available on GitHub: https://github.com/KitronikLtd/pxt-kitronik-servo-lite

The controller - whose ready-to-use version is available on the Android market for free - is well documented on the Bitty Software site.

 

Running the Robot

After flashing the micro:bit hex file created from the source described above we are finally ready to see the Cardboard Robot With Wheels running for a real RoadTest image

Enjoy this project!

You don't have permission to edit metadata of this video.
Edit media
x
image
Upload Preview
image

 

 

  • Sign in to reply

Top Comments

  • mcb1
    mcb1 over 7 years ago +4
    Nice work. Simple build and should work unless it rains The 3D printed objects certainly make it much easier and cheaper .... Mark
  • shabaz
    shabaz over 7 years ago +4
    Hi Enrico, Fantastic project! The detail is really awesome, and very cool how you made the motor attachment, so that if the blue piece needed re-sizing, it would not need the entire wheel re-printed. The…
  • balearicdynamics
    balearicdynamics over 7 years ago in reply to mcb1 +3
    Hehehe. If it rains, children can't go playing outdoors Enrico
  • fmilburn
    fmilburn over 6 years ago

    Well done!  Cardboard is one of my favorite construction materials too :-)

     

    Frank

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • balearicdynamics
    balearicdynamics over 7 years ago in reply to neilk

    Hi Nell,

     

    I have used Bitty Software for a reason. As an Android developer, the mood will be to do something but this software has a series of advantages, IMHO.  It is free, provided in some way by Kitronik and it is general purpose. Just a gamepad skeleton to which events on the micro:bit side you can associate any event. It is perfect to understand the event-driven software stuff that is the prelude to learn interrupts. Then this particular project philosophy is to use the available material for free (software included), mod and hack as the user likes, hardware and software, manage recycled stuff, cardboard, poor material. In this case, it has sense to provide the bare controller developed by Bitty software.

    Seeing this project instead part of a challenge, a better chassis should be done, designed, 3D printer, laser cut, more precision in the building, custom developed software also on the mobile etc.

     

    Enrico

    • Cancel
    • Vote Up +3 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • neilk
    neilk over 7 years ago

    Very nice project, Enrico.

     

    As well as using the Bitty Software apps to provide Bluetooth control, presumably it would be possible to develop your own control App in, say, App Inventor?

     

    Neil

    • Cancel
    • Vote Up +3 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • three-phase
    three-phase over 7 years ago

    Great detailed blog of the robot build.

     

    Kind regards

    • Cancel
    • Vote Up +3 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • balearicdynamics
    balearicdynamics over 7 years ago in reply to shabaz

    Thank you Shabaz,

     

    The idea of the blue piece ... Is a great idea to recycle the motor etc. etc. ... That's true but the reality is quite different image

    In fact, these two motors are recycled from the project TLE94112 Interactive Testing Platform I have done past year. The star was inserted with the hot solder (as suggested by shabaz for another project in 2016, remember ? LoL) and was so well put in place that seem impossible to remove. So I have adapted the concept. Then you found a good reason I will apply in the future.

     

    Enrico

    • Cancel
    • Vote Up +3 Vote Down
    • Sign in to reply
    • More
    • Cancel
>
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube