TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Ask HN: Learning about hardware fault detection

1 点作者 roeles大约 1 年前
I would like to learn about hardware fault detection, particularly detecting faults in actuators&#x2F;LEDs&#x2F;Speakers&#x2F;Haptic buzzers etc. Although I will explain an example below, I am not looking for you to solve this issue. Please point me towards books&#x2F;talks or search terms so I can learn about it myself. If you can point me towards real-life cases, please do so. I learn best by understanding examples.<p>Let&#x27;s say I have an infinitely reliable microcontroller+code that must control an LED. This LED is switched on&#x2F;off by means of a GPIO-pin, which is connected to a transistor&#x2F;MOSFET. This transistor&#x2F;MOSFET actually turns the LED on or off.<p>I would like to be as certain as possible that the LED is on when I want it to be on. If it is not on, I want to know (and do something else outside the scope of this question). As far as I can see, I can do several things to ensure the LED is on:<p>1. I can sense the GPIO-pin, which tells me if at least my logic works. This seems a bit pointless.<p>2. I can sense the current flowing over the LED with a current shunt.<p>3. I can sense the emitted light from the LED with some kind of optical sensor.<p>In the case of #2 and #3, I will probably get an indication of when the LED is on&#x2F;off... but it also introduces new issues, such as:<p>1. What if my detection mechanism is less reliable than the transistor&#x2F;LED circuit?<p>2. My usage of a current shunt increases the current draw of the LED circuit a bit. I&#x27;m influencing what I attempt measure.<p>I&#x27;m curious how these issues are approached in safety-critical situations: airplanes, rockets, trains, reactors etc. When does it make sense for a system to check if the hardware is still working as expected? And which of the 3 cases to measure?

1 comment

wmoser大约 1 年前
From working on controls on ships. Measuring the current using a CT (current transformer) or Rogowski coil to measure the current is a fairly standard way to monitor if something actually turned on when you told it to. A coil is a fairly robust device (no moving parts) so fairly reliable although sometime the connections become loose or the small wires susceptible to vibrations and breaking depending on the application. If you choose to use a CT make sure to never have a live conductor in it without it being connected to a rated measurement device reading. Since it’s a transformer, as current goes to zero, voltage goes to infinity which is generally a large value before it gets to be exciting. There are also devices called wire break detectors that are wired in series (I think they’re a type of galvanic isolator) that can be used to monitor if there’s a break in the wire but some of the cheaper ones are not as robust and have had them fail. Physical movement there are a lot of limit switches. Rotary encoders and rheostats are another way to monitor rotation of an object. I’ve even seen a rheostat used as a switch in a safety critical system before when they didn’t want to risk an open circuit, so just measuring resistance above or below a certain threshold was on or off. Smart camera systems with computer vision are becoming more main stream. Industrial sensors are often 4..20mA. Below 4 mA you might have a break or noise. If your reading is above 20mA you might have a short or noise. Slightly above or below might be a calibration issue.<p>Your acceptable rate and mode of failure will dictate what kind and how many layers of monitoring you need.<p>Depending on your use case you might be able to set up a camera and computer running openCV to watch the led and see if it comes on.