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
Sixth Sense Design Challenge
  • Challenges & Projects
  • Design Challenges
  • Sixth Sense Design Challenge
  • More
  • Cancel
Sixth Sense Design Challenge
Blog Sixth Sense - Interfaces - GraffitiBot blog 4
  • Blog
  • Forum
  • Documents
  • Polls
  • Files
  • Events
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: dougw
  • Date Created: 17 Jan 2019 6:24 AM Date Created
  • Views 1277 views
  • Likes 10 likes
  • Comments 5 comments
  • graffitibot
  • doug wong
  • sixth sense design challenge
Related
Recommended

Sixth Sense - Interfaces - GraffitiBot blog 4

dougw
dougw
17 Jan 2019

image

 

 

Some component testing.....

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

 

Electronic Interfaces

This blog describes the interface for all of the GraffitiBot sensors and actuators.

The GraffitiBot beast includes 18 sensors, 10 motors, a mSD card, an LCD, a Bluetooth radio, a capacitive keypad, and 2 Cortex M4 MCUs. The capacitive keypad actually boosts the number of sensors to 30.


Sensors:

The STMicroelectronics Sensor Tile has a whole suite of 14 sensors plus an MCU and radio all on a tiny card 13.6 x 13.7 mm:image

  • It has a high performance LSM6DSM MEMS motion sensor which includes 3 orthogonal accelerometers and 3 orthogonal angular rate sensors (3D gyroscope) all squeezed into a 2.5 x 3 x 0.86 mm package.
  • It has a high performance LSM303AGR compass module which includes 3 orthogonal magnetometers and 3 orthogonal accelerometers in a tiny 2 x 2 x 1 mm package. The data from this chip has 16 bit resolution.
  • It has an even smaller LPS22HB pressure and temperature sensor in a 2 x 2 x 0.76 mm package. The pressure has 24 bit resolution and the temperature has 16 bit resolution.
  • It has an MP34DT05-A micrphone in a 3 x 4 x 1 mm package.
  • It has a BlueNRG-MS Bluetooth 4.1 module.
  • And it has an STM32L4 Cortex M4F MCU to read all these sensors and peripherals.
  • The Sensor Tile plugs onto a carrier module that adds a USB connector and a micro SD card connector all on a card only 31 x 17 mm.image
  • The carrier module in turn plugs onto an arduino compatible shield, which in turn plugs onto an STM32F411RE MCU.imageimage

The TE Connectivity sensors include:

  • an FX1901 compression load cell. I have designed a signal conditioning card for this sensor that outputs an analog voltage proportional to the force applied.image
  • a contactless magnetic angle sensor that includes 2 anisotropic magneto resistance Wheatstone bridges. I have designed a signal conditioning circuit board for these sensors that outputs an analog voltage from each bridge.image
  • a NB-PTCO-187 platinum thin film temperature sensor which has a thermal time constant of 0.2 s. I have purchased a signal conditioning module based on a Maxim MAX31865. This chip converts the RTD signal to digital with a 15 bit A/D.image


Motors

There are 8 aquarium pumps which each have a motor. I have designed a PCB with a port expander and 8 large FETs to drive these pumps.imageimage

There is a main DC drive motor for the GraffitiBot that will be driven by a motor controller based on a Texas Instruments DRV8830 H-bridge motor driver.image

There is a steering motor which may be controlled by a servo driver module – this may change but a PWM controller based on an NXP PCA9685 is on order.image


There is also an SPI LCD in the GraffitiBotimage

 

The MCU needs to talk to 41 devices which ends up to be a large number of interfaces for an MCU to handle. The sensor tile shield leaves just enough pins to connect the LCD and the analog sensors. There are not enough pins to control the motors or read the temperature sensor so I have had to try and control all the motors and read the RTD through the I2C interface. There aren't any pins left for control switches, so I had to add an I2C keypad.image

I have started design of a PCB to connect all of the sensors, motors and peripherals to the MCU but I'm still struggling to find pins. Although I'm using I2C for most of the interfaces, it often requires an extra pin to tell the MCU its status. It is going to take some time to dive into the detailed handshaking requirements of every peripheral and devise ways to implement adequate interfaces.

Here is where my pin mapping stands right now....the conflicts are tentatively resolved...

image

At least I have designed and ordered the other 3 PCBs that the project needs.

At last count the system will have at least 13 PCBs.

Most of the electronic components are either received or on order.

I have some of the mechanical parts on order or in stock, but have not started designing all the 3D printed parts that will be needed.

I have been focusing on hardware to try and get it all on order, but I haven't looked at firmware and there is a significant risk that there are firmware constraints that will present issues for my hardware choices. However, to have any chance of completing this project, I will have to take some risks.

Time will need to be carefully managed as my day job is about to go ballistic in the busy sense and there will be several international trips involved. I had to interrupt the last PCB design just to try and stay up with the blogging requirements...

 

 

 

Relevant Links

Sixth Sense Design Challenge: About This Challenge

Sixth Sense Design Challenge: Technical Documents

Sixth Sense Design Challenge

 

GraffitiBot Project Blogs

Sixth Sense GraffitiBot - blog 1

Sixth Sense - Kit Unboxing and Other Parts - GraffitiBot blog 2

Sixth Sense - Sensor Circuits - GraffitiBot blog 3

Sixth Sense - Interfaces - GraffitiBot blog 4

Sixth Sense GraffitiBot - System Interconnect - blog 5

Sixth Sense GraffitiBot - Wheels & Motors - blog 6

Sixth Sense GraffitiBot - ST Sensor Tile App - blog 7 

Sixth Sense - Load Cell PCB - GraffitiBot blog 8

Sixth Sense - Magnetic Angle Sensor - GraffitiBot - Blog 9

Sixth Sense - LCD Interface - GraffitiBot - blog 10 

Sixth Sense - Pump Controller - GraffitiBot Blog 11

Sixth Sense Main Drive Motor - GraffitiBot - blog 12

Sixth Sense Motor Controller Mods - GraffitiBot blog 13

Sixth Sense - RTD - GraffitiBot Blog 14

Sixth Sense Mechanical Design - GraffitiBot Blog 15

Sixth Sense GraffitiBot Motor Wiring - Blog 16

Sixthe Sense GarffitiBot - First Dry Run - Blog17

Sixth Sense GraffitiBot Hydraulics - Blog 18

Sixth Sense GraffitiBot Printing Graffiti - Blog 19 

Sixth Sense GraffitiBot - Summary - Blog 20

 

  • Sign in to reply

Top Comments

  • DAB
    DAB over 6 years ago +3
    Neat little gadget. I need to pick one up. DAB
  • weiwei2
    weiwei2 over 6 years ago +3
    the multi function tester is really cool
  • genebren
    genebren over 6 years ago +2
    OK, the TC1 is now on my 'want' list. Great update on your design challenge project. It looks like things are taking shape. Sure looks like there are going to be quite a bit going on to your GraffitiBot…
  • three-phase
    three-phase over 6 years ago

    Interesting update on your project and demo of the multifunction tester - a couple of versions seem to be available from Amazon.

     

    Kind regards

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • weiwei2
    weiwei2 over 6 years ago

    the multi function tester is really cool

    • Cancel
    • Vote Up +3 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • dougw
    dougw over 6 years ago in reply to genebren

    I don't think I have ever put this many sensors on a microcontroller before, and I haven't put this many motors on a controller before either. Add in the fully autonomous robot design plus hydraulics and this is shaping up to be the most complex design challenge I ever tried ....

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • DAB
    DAB over 6 years ago

    Neat little gadget.

    I need to pick one up.

     

    DAB

    • Cancel
    • Vote Up +3 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • genebren
    genebren over 6 years ago

    OK, the TC1 is now on my 'want' list.  Great update on your design challenge project.  It looks like things are taking shape.  Sure looks like there are going to be quite a bit going on to your GraffitiBot platform.

     

    Good luck on the project, I am eagerly awaiting your updates!

    Gene

    • Cancel
    • Vote Up +2 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