5

I was wondering which devices are used in IIoT applications. Are devices like ESP8266, ESP32, etc. (or other used in makers world) reliable for use on industrial/critical environments? If other parts of the system (power supply, etc.) are designed to be fault tolerant, would those devices be the point of failure?

With IIoT I mean the use of IoT devices in industrial environments, interacting with (or replacing) traditional devices (SCADA S. for example). An industrial environment could be a production line, a pumping system, a remote weather station, etc. I'm not talking about switching our home lights on and off or watering our garden.

I know my questions are generic but I didn't want to make a question for each type of board. I know that device selection is an application specific task but you can think about it in this way: If you need an ARM processor, for example, would you pick a RPI for your reliable "thing" or you just use it as a prototype? Would you put a RPI in a production environment? Same thing with ESP32 and so on. If the answer is no, if you only use those for prototyping, which ones can be used instead?

Here is some background. I'm learning about IoT with these platforms: Arduino, nodemcu, and RPI. I'm using micropython and processing so far. My "things" are reading sensors and speaking MQTT so far. I want to go further and I have two applications in mind. One is industry related and the other about environmental monitoring. I still have a long way to go and I want to walk in the right direction.

Maybe my question should be: What have I to learn next? or In which tools should I have to focus on? thinking about hardware development platforms for IIoT.

While I was working as a calibration technician I saw many datalogger projects building with microchip PIC and Atmel AVR microcontrollers that worked on the lab but they failed in the field. Most were academia related, grad projects or research groups projects. Industrial knowledge wasn't involved. I'm looking for that industrial insight.

Rohit Gupta
  • 507
  • 2
  • 3
  • 18
falco
  • 51
  • 3

3 Answers3

5

Two major differences between lab/experimental projects and industrial deployment are remote management and security. The devices once deployed must remain reliable and autonomous. This implies to have a way to update the devices on the field remotely and secure them. I will not go more into detail about this but this of paramount importance and it's often underestimated. It will impact the hardware choice.

As for IIoT platform, it's quite difficult to advise one as it depends on the application and constraints of the project. Solutions to develop proof of concept with more "industrial" hardware might be around:

  • STM32 (Nucleo for experimenting)

  • Digi XBee3 modules

  • Azure Sphere MT3620 Development Kit

Just to name a few. Of course these three very different example show you how different approaches can be taken and will lead to different development environments, community support, documentation, etc.

Clem844
  • 53
  • 3
2

The answer from @Clem844 covers the architectural questions. Your question also hints at reliability issues that are more of a board level design issue. There is more to this than just the RF module, but that is a critical part. You may find that the module specification gives you some hints about how suitable it will be for long term reliability. Consider:

  • Supply voltage operating range
  • Vibration spec
  • Temperature range
  • Guaranteed production lifetime
  • Certifications

Most of these module level parameters are things that you can compensate for with your product/packaging design, but it should be clear that starting with a design which should still work at high ambient temperatures (and also designing it to stay cool in the extreme operating scenario) will give you a better chance. In addition, you will understand how much design effort has gone into the module itself.

Finally, it is worth spending some time to design the system to be fault tolerant, so no one part of the system can disable your whole production line when it fails. This means checking your data, rate limiting your actions (see the unfortunate recent Boeing incident), implementing watchdogs, avoiding correlation between endpoints, lockout and recovery on fault, etc.

Along these lines, it may make sense to work more at the MCU end (less complicated software stack), design a custom PCB (minimise interconnect), over-rate the PSU, implement a 'supervisor' mcu (the equivalent of remote hard reset for a server). You might decide to invest in increased data logging capabilities so when a crash occurrs, you can root cause it and iterate the design. All of these directly add to cost, and sometimes can be counterproductive if they actually increase the failure rate.

Although you can do lots of MTBF analysis on each component and path, you can also leverage things like burn-in tests (maybe combined with thermal stress) in order to weed out the 'early failures' from the bathtub curve.

Sean Houlihane
  • 10,524
  • 2
  • 26
  • 62
0

I recommend you use Nodemcu.

  1. Nodemcu have a wifi connection. You can setup nodemcu anywhere in your factory/home/office and expand your project flexible and don't worry about how to communicate with your sensor/relay/microcontroller by wire.
  2. You can program nodemcu with Arduino IDE, it's similar to Arduino
  3. It's cheaper, small, simple than Adruino Board + Esp Wifi Sheld. You can build IIoT with low cost.
  4. It has a lot of projects on the Internet you can refer to. You can use your smartphone to control it or using RPI as Control center.

I am building my smarthome using nodemcu and Rpi 3 as control center. It works well. You can refer to some projects here: pi project

tripleee
  • 127
  • 5
Pi guide
  • 11
  • 1