OT Prec s Arduinom

Petr Zahradnik clexpert na clexpert.cz
Čtvrtek Červenec 30 00:49:48 CEST 2015


Původní zpráva ze dne 30.7.2015 od Josef Štengl:

> Mě zase zaujali ty výtahy. Představuji si případ, kde si někdo zlomí
> při ... ale to je jedno ... nohu a zažaluje výrobce výtahu. Soud
> nezajímá jestli to bylo funkční a bezpečné, ale jestli to má
> certifikáty které to dokazují.

Ano, to jsem samozřejmě pochopil. Ale přece bezpečnostní prvky nejsou
součástí řídícího procesoru nebo mikrokontroléru. Přece když chci
zajistit, aby se dveře neotevřely, dokud klec není ve stanici, bude
tam nějaké čidlo, které bude blokovat dveře. Nebude to tak, že by
Arduino kontrolovalo toto čidlo a otvíralo dveře. Stejně tak tam
nebude jiný procesor, který by to dělal. Prostě toto je bezpečnostní
prvek.

Ale Arduino může řídit vlastní proces provozu výtahu, tedy posílat
výtah do jednotlivých pater. Pokud se zblázní a místo v 5. patře
zastaví v 6. patře, nikomu se nic nestane.

Ptal jsem se na to, kde je ta hranice, tedy kdo může toto dělat? Když
takto jednoduchou úlohu, kde to není o bezpečnosti, nemůže dělat
Arduino, tak kdo tedy? Může ji dělat PIC, když někdo napíše program v
Pascalu? Nebo jen PIC, když někdo napíše program v Céčku? Nebo dokonce
v Assembleru? Nebo tam musí být Pentium? Nebo FPGA? Nebo jen PLC? A
proč? Podle mě toto může naprogramovat kdokoliv na čemkoliv.

Výtah nemůže otevřít dveře, když není ve stanici, výtah se nemůže
rozjet, když jsou otevřené dveře, výtah nemůže jet níž nebo výš... to
všechno zajišťují bezpečnostní prvky nezaložené na procesoru. Náležitě
certifikované a ověřené. Když bude Arduino nebo cokoliv jiného spínat
motor při otevřených dveřích, prostě se to nerozjede. Tak tedy proč by
výtah nemohlo řídit Arduino? A proč by nemohlo Arduino spouštět MP3
hlášky, ve kterém je patře, rozsvěcet LEDky s číslem patra apod.?

> Ono, když jeden chvilku dělá na takovýchto zařízeních, tak pak vidí
> problémy tam, kde by ho to před tím vůbec nenapadlo. Strašně to
> zdržuje než si zdůvodní, že to nemá smysl řešit :-(.

Já tohle všechno chápu, ale přece ne všechno je o bezpečnosti. Tedy ne
všechny součásti. Pokud budu vyrábět jakkoliv obrovský stroj, který
může zabít obsluhu nebo napáchat škody, tak přece tam musí být
bezpečnostní prvky. To je zřejmé. Ale ty jsou a musí být zcela
nezávislé na jakékoliv řídicí logice. Jedna věc je bezpečnostní prvek
nebo mnoho bezpečnostních prvků, druhá věc je pak vlastní řízení. Je
logické, že je vždy lepší, když zařízení nebude blbnout. Ale blbnout
může kdykoliv cokoliv a také se to stává, přestože uvnitř Arduino
není. Proto tam jsou bezpečnostní prvky.

Arduino může být spolehlivé i nespolehlivé, stejně jako jakýkoliv jiný
řídicí mikropočítač. Já se svými zkušenostmi desítek let v
programování v mnoha programovacích jazycích na mnoha platformách
dělám také chyby jako všichni ostatní.

Mimochodem, úplně nezávisle na této debatě, jsem shodou okolností
zrovna před několika dny svému synovi vysvětloval logické obvody a
sekvenční logické obvody. Vysvětloval jsem mu to zrovna na příkladu
výtahu. Rozdíl mezi tím, jak by takový výtah řídil počítač a jak by
takový výtah řídil sekvenční logický obvod. Ovšem v obou případech by
bezpečnostní prvky výtahu byly úplně stejné a zcela mimo tuto logiku.

Petr Zahradník, počítačový expert

====================================================================
Petr Zahradník, Computer Laboratory
Obvodová 740/14, 400 07 Ústí nad Labem
telefony: 910 256 000, 475 501 627, 475 500 610, mobil: 602 409 601
web: http://www.clexpert.cz, e-mail: clexpert na clexpert.cz
ICQ: 21215917, Live: clexpert na clexpert.cz, Skype: callto://clexpert
====================================================================




Další informace o konferenci Hw-list