3 ms·
100% agree, but I think the issue here comes with a typical phased design process: - Mechanical: "Here's the physical specs, no need to account for A, B, or C,
by mikepurvis 4y ago
100% agree, but I think the issue here comes with a typical phased design process:
- Mechanical: "Here's the physical specs, no need to account for A, B, or C, as it's been handled in software"
- Electrical: "Here are the physical constraints and electrical spec. No need to account for X, Y, or Z, as it's being handled in software."
- Firmware: "You need to handle A, B, C, X, Y, and Z, but if you run out of time or don't have the budget to make up a test rig for validating all those cases are handled correctly, no worries we'll just ship it anyway."
- eternityforest 4y agoThe other issue I see is when mechanical and electrical don't actually give firmware the data or control they need. You'll see stuff like a lack of battery level monitoring, or relays without current sensing. I'm not sure why we don't do things the other way, have firmware people present at every step. Some things can't be fixed later. If mechanical puts a weak link gear designed to fail before the motor, firmware might not have enough margin to not wear it out with auto-stop.
- bumby 4y agoCompletely anecdotal, but my experience was that a large amount is attributable to systems engineers and project managers not having adequate software background. Invariably, this leads to software rigor being deprioritized or with just little oversight. After all "it's just software"