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 & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
    About the element14 Community
  • 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
      •  Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      •  Vietnam
      • 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
Experts, Learning and Guidance
  • Technologies
  • More
Experts, Learning and Guidance
Ask an Expert Forum Design suggestion for a bus
  • Blog
  • Forum
  • Documents
  • Leaderboard
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Experts, Learning and Guidance to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • Replies 33 replies
  • Subscribers 320 subscribers
  • Views 3050 views
  • Users 0 members are here
Related
See a helpful answer?

Be sure to click 'more' and select 'suggest as answer'!

If you're the thread creator, be sure to click 'more' then 'Verify as Answer'!

Design suggestion for a bus

amgalbu
amgalbu over 10 years ago

Hello

I need to develop a custom board (hardware + software) to drive a set pneumatic valves. The requirements are

  • the boards can be stacked (up to 18 boards can be stacked, but I expect this number to be increased in the future)
  • the boards must be configuration-free (no dip-switches to set the board address)
  • the bus must be fault-tolerant: if a board in the stack breaks, the other boards should continue to work properly
  • pneumatic valves are "digital", so the bus must convey only on/off commands

An external board communicates with the stacked boards through the bus and drives each pneumatic valve indivudually

 

The only solution I can think of is to have two serial buses: the first one is an in-out bus used only to configure the address of each board in the stack and is used only when the system is switched on. The second bus connects all the boards in parallel, thus providing the required fault-tolerance

 

However, this solution is far from being elegant... Does somebody have a better idea?

 

Cheers

Ambrogio

  • Sign in to reply
  • Cancel

Top Replies

  • crjeder
    crjeder over 10 years ago in reply to Robert Peter Oakes +1
    I2C adressability is an issue. E. g. a suitable device could be TPS22993 Quad Channel Load Switch with GPIO and I2C Control but it features only 3 adress pins for a max of 8 devices. But each can operate…
  • Robert Peter Oakes
    Robert Peter Oakes over 10 years ago +1
    Then by that measure, using a device like a 23017 http://ww1.microchip.com/downloads/en/DeviceDoc/21952b.pdf would give 16 valves on a board and re duce the count of boards considerably and only needs…
Parents
  • Robert Peter Oakes
    Robert Peter Oakes over 10 years ago

    It sounds like were at an impass here

     

    without a proper description of what solution wants to be realized, we are unable to probide any more than speculation as to what might work

     

    It is obvious that if a specefic valve has a specefic function unique to the valve then there MUST be configuration, either by the position of the controller in a pre-defined bus (Star , Linked or otherwise) or by software or by jumpers. you can NOT have a parallel system where all boards are identical and with zero configuration or knowledge of position of each control and expect it to work... sorry not going to happen

     

    the best thing right now is to provide a better description of the system operation, function and layout

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • amgalbu
    amgalbu over 10 years ago in reply to Robert Peter Oakes

    There is no impasse here

    Each actuator must be automically aware of its position in the chain without user intervention. Configuration should happen automatically. That's why a standard bus does noto match my needs

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Robert Peter Oakes
    Robert Peter Oakes over 10 years ago in reply to amgalbu

    Each Actuator needs to know its position, this implies some kind of configuration, either through physical design or something else, If a board fails then it may not seem to be in the system (Depending on failure mode) so another board may assume its logic position if there all identical and therefor appear to the conrol system as a differnt valve to what was before the failure. this could be a big poblem

     

    you want fault tollerance such that any board failing will not stop the rest, this implies a parallel buss of some sort (Even if the data is serial), having the buss go into a board, then out to the next will break the system if the board is pulled or fails in a bad way. If the buss is parallel and un-broken if any board is pulled out for repair / replaement then there is no way for the master controller to know its position or function without some kind of local configuration, this could be through jumpers on the connector, switches on the board, programming from a aux port ont he card... something that allows the boards itentity to be known. You state all boards must be identical and auto configure with no intervention... htere has to be something that makes each position unique and known to the board. This imples configuration in some way, even if it is supplied via the connector the board is plugged into but your saying this is not acceptable

     

    These requirements are in contradiction with each other... hense... IMPASS.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Reply
  • Robert Peter Oakes
    Robert Peter Oakes over 10 years ago in reply to amgalbu

    Each Actuator needs to know its position, this implies some kind of configuration, either through physical design or something else, If a board fails then it may not seem to be in the system (Depending on failure mode) so another board may assume its logic position if there all identical and therefor appear to the conrol system as a differnt valve to what was before the failure. this could be a big poblem

     

    you want fault tollerance such that any board failing will not stop the rest, this implies a parallel buss of some sort (Even if the data is serial), having the buss go into a board, then out to the next will break the system if the board is pulled or fails in a bad way. If the buss is parallel and un-broken if any board is pulled out for repair / replaement then there is no way for the master controller to know its position or function without some kind of local configuration, this could be through jumpers on the connector, switches on the board, programming from a aux port ont he card... something that allows the boards itentity to be known. You state all boards must be identical and auto configure with no intervention... htere has to be something that makes each position unique and known to the board. This imples configuration in some way, even if it is supplied via the connector the board is plugged into but your saying this is not acceptable

     

    These requirements are in contradiction with each other... hense... IMPASS.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Children
No Data
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 © 2026 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