Àðõèòåêòóðà x86 ñðàâíèòåëüíî íåäàâíî ñòàëà ïîçèöèîíèðîâàòüñÿ êàê âñòðàèâàåìàÿ è ðåàëüíûå ðåøåíèÿ íà å¸ îñíîâå, â ýòîé îáëàñòè, ðåäêî îáëàäàþò ðåñóðñàìè (< i386), íåäîñòàòî÷íûìè äëÿ èñïîëíåíèÿ ïîëíîöåííîé ÎÑ è ðàçâèòîãî îêðóæåíèÿ. Ïî ýòîé ïðè÷èíå, à òàêæå ïî ïðè÷èíå áîëüøåé óíèôèêàöèè àðõèòåêòóðû, èíäèâèäóàëüíàÿ ñáîðêà ÿäðà Linux è áàçîâûõ ïðîãðàìì îêðóæåíèÿ ÎÑ îñóùåñòâëÿåòñÿ äîñòàòî÷íî ðåäêî, ÷òî îáû÷íî õàðàêòåðíî äëÿ àðõèòåêòóðû ARM. Áîëåå èíòåðåñíûì è ïðàêòè÷íûì äëÿ x86, äëÿ øèðîêîãî ñïåêòðà îáîðóäîâàíèÿ, ÿâëÿåòñÿ ñáîðêà ïðîøèâîê ñî ñæàòîé êîðíåâîé ôàéëîâîé ñèñòåìîé (ÊÔÑ). Îäíàêî ïî ïðåæíåìó âîçìîæíà èíäèâèäóàëüíàÿ ñáîðêà ïðîøèâîê ñ ïîìîùüþ ñèñòåì ñáîðîê âðîäå "BuildRoot" èëè "PTXDist", íèæå. Òàêæå âîçìîæíà è ïðÿìàÿ óñòàíîâêà äèñòðèáóòèâà Linux.
Ïåðåä ðåàëèçàöèåé ïðîøèâêè ÏËÊ, äàííîãî ðàçäåëà, ñòàâèëèñü ñëåäóþùèå òðåáîâàíèÿ:
Ó÷èòûâàÿ âûøåïðèâåäåííûå òðåáîâàíèÿ äëÿ ñîçäàíèÿ ïðîøèâêè áûë âûáðàí èíñòðóìåíò ñîçäàíèÿ äèñòðèáóòèâîâ mkimage ALTLinux. mkimage — èíñòðóìåíò äëÿ ñáîðêè ïî øàáëîíó îáðàçîâ îñíîâàííîé íà Sisyphus ñèñòåìû.  êà÷åñòâå èñõîäíîãî íàáîðà øàáëîíîâ áûë âçÿò íàáîð øàáëîíîâ ôîðìèðîâàíèÿ äèñòðèáóòèâîâ ALTLinux ïî àäðåñó git://git.altlinux.org/people/boyarsh/packages/mkimage-profiles-desktop êîìàíäîé:
Çà îñíîâó ôîðìèðîâàíèÿ ÏËÊ-øàáëîíà áûë âçÿò ñòàíäàðòíûé "rescue", êàê íàèáîëåå êîìïàêòíûé è áëèçêèé ê öåëåâîé çàäà÷å ÏËÊ.
Ïåðâè÷íàÿ ñáîðêà îñóùåñòâëÿëàñü íà îñíîâå ïàêåòíîé áàçû äèñòðèáóòèâà ALTLinux 5.1, ãäå ïðèñóòñòâóåò ÿäðî ðåàëüíîãî âðåìåíè îò
XENOMAI. Äëÿ ïîëó÷åíèÿ ðÿäà ñïåöèôè÷åñêèõ ïàêåòîâ íóæíî ïîäêëþ÷èòü ðåïîçèòîðèé "ALTLinux 5.1" îò ïðîåêòà OpenSCADA:
rpm ftp://ftp.oscada.org/ALTLinux/5.1 openscada main
 ïåðâóþ î÷åðåäü ñîçäàâàëàñü êîíôèãóðàöèÿ ÏËÊ áåç ëîêàëüíîãî äèñïëåÿ, â âèäó íàëè÷èÿ îáîðóäîâàíèÿ òàêîãî òèïà è îòñóòñòâèÿ îáîðóäîâàíèÿ äëÿ Touch-ïàíåëåé.
Íîâûé øàáëîí ÏËÊ áûë íàçâàí "plc" è òåñòèðîâàëñÿ íà ïëàòàõ ôîðìôàêòîðà PC/104 MOPSlcdLX ôèðìû
Kontron,
ATH400-128 ôèðìû
Diamond Systems è ìîäóëüíîãî ÏËÊ
LP-8781 ôèðìû
ICP DAS. Àðõèâ ðåçóëüòèðóþùåãî äåðåâà mkimage ñ øàáëîíîì "plc" ìîæíî çàãðóçèòü çäåñü
ftp://ftp.oscada.org/OpenSCADA/PLC (øàáëîíû è ìàòåðèàëû îòäåëüíûõ êîíòðîëëåðîâ ðàçìåùåíû â ñîáñòâåííûõ äèðåêòîðèÿõ).
Êëþ÷åâûì ìîìåíòîì êîíôèãóðàöèè íîâîãî øàáëîíà ñòàëî íàïèñàíèå ñêðèïòà èíèöèàëèçàöèè (rc.sysinit), ñêðèïòà ïîñëå-èíñòàëëÿöèîííîé êîíôèãóðàöèè îáðàçà ïðîøèâêè è ïåðå÷íÿ ïàêåòîâ â îáðàçå ïðîøèâêè. Ïåðâûé ñêðèïò îôîðìëåí â âèäå ïàêåòà "startup-plc". Âòîðîé ñêðèïò âëîæåí â øàáëîíå "plc" ïî ïóòè: "profiles/plñ/image-scripts.d/01system". Ïåðå÷åíü ïàêåòîâ âëîæåí â øàáëîíå "plc" ïî ïóòè: "profiles/pkg/lists/plñ.in".
Ïðîöåäóðà ñîçäàíèÿ ïðîøèâêè èç øàáëîíà ñëåäóþùàÿ:
 ðåçóëüòàòå ïîëó÷àåì âûõîäíóþ äèðåêòîðèþ â "profiles/out/" âèäà:
Çàãðóæàòü ïðîøèâêó ìîæíî íà: USB-flash, HDD è SSD. Îäíàêî â ñëó÷àå ñ USB-flash ìîæåò áûòü ïðîáëåìà ñ îæèäàíèåì èíèöèàëèçàöèè USB-ïîäñèñòåìû è íóæíî áóäåò íåìíîãî "ïîáåãàòü" ïî äèàëîãàì çàãðóç÷èêà.
Ôàéëîâàÿ ñèñòåìà ìîæåò áûòü FAT èëè EXT2/3.  ñëó÷àå ñ EXT3 ìîíòèðîâàíèå êîðíÿ ïðîèçâîäèòñÿ êàê EXT2, èç-çà ïðîáëåì â èíèöèàëèçàòîðå.  ñëó÷àå ñ EXT2/3 íóæíî áóäåò èñïîëüçîâàòü íå çàãðóç÷èê syslinux, à extlinux, êîíôèãóðàöèÿ êîòîðîãî âïðî÷åì ïî÷òè íè÷åì íå îòëè÷àåòñÿ.
Äàëåå ìîíòèðóåì íîñèòåëü è ðàçìåùàåì íà í¸ì ôàéëû èç âûõîäíîé äèðåêòîðèè, ñëåäóþùèì îáðàçîì.
 ñëó÷àå ñ FAT è syslinux:
 ñëó÷àå ñ EXT2/3 è extlinux:
Äëÿ îáåñïå÷åíèÿ íàä¸æíîãî ôóíêöèîíèðîâàíèÿ ðàáî÷èå äàííûå ðàçìåùàþòñÿ â ôàéëå "work" ñ ôàéëîâîé ñèñòåìîé EXT3. Ôàéëîâàÿ ñèñòåìà ýòîãî ôàéëà ïðîâåðÿåòñÿ íà öåëîñòíîñòü ïðè èíèöèàëèçàöèè. Ñîçäà¸òñÿ ýòîò ôàéë ñëåäóþùèì îáðàçîì:
 ñëó÷àå ñ ôàéëîâîé ñèñòåìîé EXT2/3 íà öåëåâîì äèñêå ìîæíî ôàéë "work" íå ñîçäàâàòü. Òîãäà ðàáî÷èå äàííûå áóäóò ðàçìåùàòüñÿ â äèðåêòîðèè root öåëåâîãî äèñêà.
Ñëåäóþùèì ýòàïîì ÿâëÿåòñÿ êîíôèãóðàöèÿ è èíèöèàëèçàöèÿ çàãðóç÷èêà. Äëÿ êîíôèãóðàöèè çàãðóç÷èêà íóæíî îòðåäàêòèðîâàòü ôàéë "syslinux/syslinux.cfg" èëè "extlinux/extlinux.conf" ñëåäóþùèì îáðàçîì:
 ñëó÷àå âûáîðà èäåíòèôèêàöèè çàãðóæàåìîãî ðàçäåëà ïî èíäèâèäóàëüíîìó èäåíòèôèêàòîðó, óçíàòü åãî äëÿ íàøåãî ðàçäåëà ìîæíî êîìàíäîé: blkid.
 ñëó÷àå ñ ìåòêîé ýòà çàäà÷à ÷óòü ñëîæíåå ïîñêîëüêó äåëàåòñÿ îíà äëÿ ðàçíûõ ôàéëîâûõ ñèñòåì ïî ðàçíîìó.
Äëÿ ôàéëîâûõ ñèñòåì EXT2/3 ýòî äåëàåòñÿ óòèëèòîé e2label. Íàïðèìåð, òàê: $ e2label /dev/sdb1 PLÑ
Äëÿ ôàéëîâîé ñèñòåìû FAT ýòî äåëàåòñÿ íàáîðîì óòèëèò èç êîìïëåêòà mtools èëè ñ ïîìîùüþ parted, ÷òî ïðîùå. Ñ ïîìîùüþ mtools ýòî äåëàåòñÿ ñëåäóþùèì îáðàçîì:
Òåïåðü ìîæåì èíèöèàëèçèðîâàòü çàãðóç÷èê:
Íà ýòîì ñ çàãðóçêîé è èíèöèàëèçàöèåé ïðîøèâêè âñ¸. Åñëè ïîëó÷åííûé äèñê íå ãðóçèòñÿ òî:
 ðåçóëüòàòå ïîëó÷àåì ïðîøèâêó ðàçìåðîì îò 30 äî 100Ìá, óäîâëåòâîðÿþùóþ ôàêòè÷åñêè âñåì çàÿâëåííûì òðåáîâàíèÿì è îáåñïå÷èâàþùóþ:
 êà÷åñòâå ñðåäû èñïîëíåíèÿ ÏËÊ èñïîëüçóåì ñèñòåìó OpenSCADA. Äëÿ äàííîãî ñëó÷àÿ âîçüì¸ì ñáîðêó ñ îòäåëüíûìè ïàêåòàìè íà êàæäûé ìîäóëü è óêàæåì äëÿ óñòàíîâêè âèðòóàëüíûé ïàêåò "openscada-plc", êîòîðûé ñîäåðæèò çàâèñèìîñòè íà âñå ïàêåòû OpenSCADA, îáû÷íî èñïîëüçóåìûå äëÿ äàííîé êîíôèãóðàöèè. Ïàêåò ãðàôè÷åñêîé áèáëèîòåêè GD2 áûë ïåðåñîáðàí áåç ïîääåðæêè ôîðìàòà ãðàôè÷åñêîãî ôàéëà "xpm" è ïîëó÷èë íàçâàíèå "libgd2-noxpm". Ïåðåñáîðêà äåëàëîñü äëÿ òîãî ÷òîáû èñêëþ÷èòü òÿæåëûå çàâèñèìîñòè íà áèáëèîòåêè ãðàôè÷åñêîãî èíòåðôåéñà XOrg.
 ðåçóëüòàòå ïîëó÷èëàñü ñðåäà èñïîëíåíèÿ ÏËÊ ñ ïîääåðæêîé:
Êîíôèãóðàöèÿ OpenSCADA çàïóñêàåòñÿ â ðåæèìå äåìîíà, â ëîêàëè "en_US.UTF-8" (åù¸ äîñòóïíû ëîêàëè "ru_RU.UTF-8" è "uk_UA.UTF-8"), ñ èñïîëüçîâàíèåì ëîêàëüíîé ÁÄ SQLite, ïðåäîñòàâëÿÿ ïî óìîë÷àíèþ ñåòåâûå ñåðâèñû:
 ýòîì ðàçäåëå ðàññìîòðèì äåòàëè äåðåâà ÎÑ ïðîøèâêè, ñêðèïò èíèöèàëèçàöèè "rc.sysinit.plc" è ñêðèïò ïîäãîòîâêè äåðåâà ÎÑ ïðîøèâêè.
Äëÿ ïîñòðîåíèÿ ïðîøèâêè ÏËÊ èñïîëüçîâàëñÿ ñëåäóþùèé ïåðå÷åíü ïàêåòîâ:
Ïåðå÷åíü ìîäóëåé ÿäðà Linux, ñòàäèè ïðåäâàðèòåëüíîé èíèöèàëèçàöèè, ñ öåëüþ óìåíüøåíèÿ ðàçìåðà îáðàçà èíèöèàëèçàöèè áûë óìåíüøåí äî ñïèñêà:
 ñêðèïòå ïîäãîòîâêè äåðåâà áûëè äîáàâëåíû ôóíêöèè:
Ñêðèïò èíèöèàëèçàöèè (rc.sysinit.plc) áûë íàäåë¸í ôóíêöèÿìè:
 ðåçóëüòàòå ýòèõ ìåðîïðèÿòèé òàáëèöà ìîíòèðîâàíèÿ êîíå÷íîãî äåðåâà ÏËÊ ïðèíÿëà âèä:
Îäèí èç âàðèàíòîâ ïðîøèâêè ñîáèðàåòñÿ ñ ãðàôè÷åñêèì èíòåðôåéñîì, êîòîðûé, îäíàêî, íóæíî íàñòðîèòü äëÿ ïîëó÷åíèÿ àâòîìàòè÷åñêîãî çàïóñêà ñî ñðåäîé âèçóàëèçàöèè OpenSCADA. Êðîìå òîãî íóæíî îòìåòèòü, ÷òî ïðîøèâêà ñ ãðàôè÷åñêèì èíòåðôåéñîì íå ñîäåðæèò âñåõ äðàéâåðîâ è ìîæåò ïîòðåáîâàòüñÿ å¸ ïåðåñáîðêà ïîä íóæíîå îáîðóäîâàíèå.
Ïîñëå çàãðóçêè è âõîäà â êîíñîëü íóæíî ñêîíôèãóðèðîâàòü XServer, àâòîìàòè÷åñêèé ãðàôè÷åñêèé âõîä, çàïóñê ãðàôè÷åñêîãî îêðóæåíèÿ è àâòîìàòè÷åñêèé çàïóñê OpenSCADA èç îêðóæåíèÿ IceWM:
Ñëåäóþùèì ýòàïîì â ñîçäàíèè ïðîøèâîê ñòàë ïåðåõîä íà ïàêåòíóþ áàçó äèñòðèáóòèâà ALTLinux T6. Â öåëîì ïðîöåäóðà ñîçäàíèÿ ïðîøèâêè áûëà ñîõðàíà, ñ ðÿäîì èçìåíåíèé, íî ïðè ýòîì áûëè äîáàâëåíû íåêîòîðûå óëó÷øåíèÿ è ðàñøèðåíèÿ:
Ïîñêîëüêó ïîÿâèëàñü âîçìîæíîñòü ëåãêî äîóñòàíàâëèâàòü íóæíûå ïàêåòû ïðÿìî èç ðåïîçèòîðèÿ òî îòïàëà íåîáõîäèìîñòü â îòäåëüíîé ñáîðêå ïðîøèâîê ñ GUI. Ò.å. ìîæíî ëåãêî äîóñòàíîâèòü íóæíûé îêîííûé ìåíåäæåð (WM) èëè îêðóæåíèå ðàáî÷åãî ñòîëà ñ íåîáõîäèìûìè äðàéâåðàìè, ÷åì ñîçäàâàòü îòäåëüíóþ ïðîøèâêó ñ îãðàíè÷åííûì ïåðå÷íåì äðàéâåðîâ.
Ñêðèïò "startup-plc" îêàçàëñÿ íåíóæåí â íîâûõ ïðîøèâêàõ ïîñêîëüêó ïåðåìîíòèðîâàíèå íà çàïèñü êîðíåâîé ÔÑ "root" îñóùåñòâëÿåòñÿ ðàíåå, íà ñòàäèè ïåðâè÷íîé èíèöèàëèçàöèè. Ñêðèïò "profiles/plñ/image-scripts.d/01system" ïåðåèìåíîâàí â "profiles/plñ/image-scripts.d/init1-PLC", íåñêîëüêî èçìåí¸í è ðàñøèðåí. Ïåðå÷åíü ïàêåòîâ ïðîøèâêè îñòàëñÿ â "profiles/pkg/lists/plñ.in" è íåñêîëüêî èçìåí¸í.
Äëÿ ïîëó÷åíèÿ ðÿäà ñïåöèôè÷åñêèõ ïàêåòîâ íóæíî ïîäêëþ÷èòü ðåïîçèòîðèé "ALTLinux T6" îò ïðîåêòà OpenSCADA:
rpm ftp://ftp.oscada.org/ALTLinux/t6 openscada main
Ïðîöåäóðà ñîçäàíèÿ ïðîøèâêè èç øàáëîíà ôàêòè÷åñêè íå èçìåíèëàñü:
# Ñîçäàíèå ñêðèïòà êîíôèãóðàöèè "configure"
$ ./autoconf
# Êîíôèãóðàöèÿ ñáîðùèêà äëÿ ãåíåðàöèè îáðàçîâ äèñêîâ. Êëþ÷ "--with-imagetype" ìîæíî óñòàíîâèòü â "iso", èëè îïóñòèòü,
# äëÿ ñîçäàíèÿ êîìáèíèðîâàííîãî ISO-îáðàçà
$ ./configure --with-distro=kdesktop --with-branding=altlinux-kdesktop --with-version=6.0 --with-language=en_US --with-imagetype=flash
# Ñáîðêà îáðàçà
$ make plc.cd
Ñîäåðæèìîå âûõîäíîé äèðåêòîðèè ñ îáðàçîì è óñòàíîâêà ïðîøèâêè íà ôàéëîâóþ ñèñòåìó FAT è EXT2/3/4 îòëè÷àåòñÿ òîëüêî ïåðåèìåíîâàíèåì ôàéëà àðõèâà ÔÑ ñ "plc" â "live". Óñòàíîâêà ISO-îáðàçà íà USB-flash, HDD, SSD âûïîëíÿåòñÿ êîìàíäîé dd:
$ dd if=LP8x81-ALTLinuxT6-OpenSCADA_0.8.0.6-i586-plc.iso of=/dev/sd{x} bs=4096
Âìåñòî ôàéëà "work" íóæíî ñîçäàòü ðàçäåë EXT3 ñ ìåòêîé "alt-live-storage", åñëè ýòî íå ISO-îáðàç. Ñîçäàâàòü íîâûé ðàçäåë ìîæíî ñ ïîìîùüþ fdisk, åñëè FAT ðàçäåë áûë ñîçäàí íå íà âñ¸ì äîñòóïíîì ïðîñòðàíñòâå äèñêà, èëè ñ ïîìîùüþ parted, ãäå ðàçäåë FAT ìîæíî óìåíüøèòü. Çà äåòàëÿìè ñîçäàíèÿ ðàçäåëà îòîøë¸ì ê äîêóìåíòàöèè íà fdisk èëè parted.
Êîíôèãóðàöèÿ ôàéëîâ "syslinux/syslinux.cfg" è "extlinux/extlinux.conf" íå èçìåíèëàñü, êðîìå ñìåíû èìåíè àðõèâà ÔÑ ñ "plc" íà "live".
 ðåçóëüòàòå ïîëó÷àåì ïðîøèâêó ðàçìåðîì îò îáåñïå÷èâàþùóþ:
Äëÿ ïîñòðîåíèÿ ïðîøèâêè ÏËÊ èñïîëüçîâàëñÿ ñëåäóþùèé ïåðå÷åíü ïàêåòîâ:
Ïåðå÷åíü ìîäóëåé ÿäðà Linux, ñòàäèè ïðåäâàðèòåëüíîé èíèöèàëèçàöèè, áûë íåñêîëüêî èçìåí¸í è ñîñòàâèë:
Ñêðèïò ïîäãîòîâêè äåðåâà "profiles/plñ/image-scripts.d/init1-PLC" âûïîëíÿåò ôóíêöèè:
Äëÿ ðÿäà çàäà÷ ÏËÊ âàæíûì, ÷àñòî è êðèòè÷åñêèì, êðèòåðèåì îêðóæåíèÿ ÿâëÿåòñÿ åãî óðîâåíü îáåñïå÷åíèÿ ðåàëüíîãî âðåìåíè (RealTime), ò.å. âîçìîæíîñòü ðàáîòû çàäà÷ ñîãëàñíî ïðèîðèòåòàì ðåàëüíîãî âðåìåíè è îáåñïå÷åíèå ðåàêöèè íà ñîáûòèÿ ñîãëàñíî ýòèì ïðèîðèòåòàì.
ßäðî Linux ñàìî ïî ñåáå ïðåäîñòàâëÿåò POSIX ïîëèòèêè ïëàíèðîâàíèÿ â ðåàëüíîì âðåìåíè "SCHED_FIFO" è "SCHED_RR" ñ äèàïàçîíîì ïðèîðèòåòîâ (0...100). Îäíàêî âàæíûé êðèòåðèé "×àñòîòà òàéìåðà è âðåìÿ ðåàêöèè íà íåãî" äî âåðñèé ÿäåð Linux 2.6.24 áûëè î÷åíü íèçêè, ïî ìåðêàì ñèñòåì ðåàëüíîãî âðåìåíè.  ñîâðåìåííûõ ÿäðàõ Linux (> 2.6.24) îáåñïå÷åíà ïîääåðæêà òàéìåðîâ âûñîêîãî ðàçðåøåíèÿ (HPET), ÷òî óìåíüøèëî âðåìÿ ðåàêöèè íà òàéìåð äî óðîâíÿ 100 ìèêðîñåêóíä, îäíàêî ñòàáèëüíîñòü ýòîãî âðåìåíè ðåàêöèè íå îáåñïå÷åíà. Äëÿ îáåñïå÷åíèÿ ñòàáèëüíîñòè ðåàêöèè íà òàéìåð íà óðîâíå 60 ìèêðîñåêóíä, à òàêæå ðÿäà äðóãèõ êðèòåðèåâ ðåàëüíîãî âðåìåíè, íà äàííûé ìîìåíò, íóæíî ÿäðî ñîáèðàòü ñ îäíèì èç ðàñøèðåíèé ðåàëüíîãî âðåìåíè.
 äèñòðèáóòèâàõ ALTLinux çàìå÷åíî ÿäðî 2.6.29-rt-up, êîòîðîå ñîáðàíî ñ ðàñøèðåíèåì ðåàëüíîãî âðåìåíè
XENOMAI. Â äðóãèõ äèñòðèáóòèâàõ, íàïðèìåð
OpenSuSE çàìå÷åíû äàæå ïðîäóêòû ñ òàêèìè ðàñøèðåíèÿìè.
Íà äàííûé ìîìåíò áîëåå âûñîêèå ïîêàçàòåëè ðåàëüíîãî âðåìåíè îáåñïå÷èâàåò ðàñøèðåíèå The Real Time Preempt Patch, ïðè âêëþ÷åíèè ïîëíîé ïîääåðæêè (CONFIG_PREEMPT_RT), ïðîöåññ ñáîðêè è ðåçóëüòàòû ðàáîòû Linux ÿäåð ñ êîòîðûì áóäóò îòñëåæèâàòüñÿ â ýòîì ðàçäåëå.
Äëÿ òåñòèðîâàíèÿ óðîâíÿ ðåàëüíîãî âðåìåíè òåõ èëè èíûõ ÿäåð áóäåì ïîëüçîâàòüñÿ óòèëèòîé "Cyclictest", òèïîâàÿ ñòðîêà âûçîâà è àðãóìåíòû áóäóò òàêèìèì: "$ cyclictest -t1 -c1 -p 80 -n -i 200 -l 100000". Ãäå:
Ïàðà èçìåðåíèé äëÿ ÿäåð Linux îáùåãî íàçíà÷åíèÿ:
Äàííîå ÿäðî ñîäåðæèòñÿ â äèñòðèáóòèâå ALTLinux 5.1, à òàêæå ïåðåíåñåíî â ëîêàëüíûé ðåïîçèòîðèé ïðîåêòà OpenSCADA, äëÿ ALTLinux T6. Ýòî ÿäðî ñîáðàíî ñ ðàñøèðåíèåì XENOMAI è
AUFS, ÷òî ïîçâîëÿåò èñïîëüçîâàòü åãî â ïðîøèâêàõ ñ óïàêîâàííîé ÊÔÑ, ÷òî è ñäåëàíî äëÿ ÏËÊ LP-8x81.
Ðåçóëüòàòû òåñòîâ ýòîãî ÿäðà:
Êàê âèäíî èç ðåçóëüòàòîâ òåñòà, ïàò÷ XENOMAI íå îáåñïå÷èâàåò äîñòîéíîãî óðîâíÿ ðåàëüíîãî âðåìåíè ïðè èñïîëüçîâàíèè ñòàíäàðòíûõ ìåõàíèçìîâ ïëàíèðîâàíèÿ ðåàëüíîãî âðåìåíè POSIX, â òî âðåìÿ êàê ÿäðà âåðñèè 3 äàæå áåç íàëè÷èÿ îñîáûé ðàñøèðåíèé ðåàëüíîãî âðåìåíè îáåñïå÷èâàþò çàìåòíî ëó÷øèé ðåçóëüòàò.
Íåîáõîäèìîñòü ñáîðêè èìåííî ýòîãî ÿäðà ñ ïàò÷åì/ïàðàìåòðîì CONFIG_PREEMPT_RT ñòîèò ïî ïðè÷èíå íàëè÷èÿ ðÿäà áèíàðíûõ ìîäóëåé îò ICP_DAS, äëÿ "LP8x81". Òàêæå ñòîèò âîïðîñ ñáîðêè ÿäðà 2.6.33 ïî òîé-æå ïðè÷èíå, íî äëÿ "LP8x81 Atom". Ïðåäâàðèòåëüíûå ñáîðêè ÿäåð 2.6.29 è 2.6.33 âûÿâèëè ðÿä ïðîáëåì, êîòîðûå áóäóò òóò îïèñàíû. Ðàññìàòðèâàåòñÿ òàêæå âàðèàíò ñáîðêè ñîâðåìåííîãî ÿäðà ñ CONFIG_PREEMPT_RT, à çàòåì çàïðîñ íà ñáîðêó áèíàðíûõ ìîäóëåé ó "ICP DAS".
Ïðîöåññ ñáîðêè è òåñòèðîâàíèÿ:
Ïîëó÷åííîå ÿäðî, ïåðåèìåíîâàíî â "kernel-image-rt1-up-2.6.29.alt1", ìîæíî èñïîëüçîâàòü äëÿ PLC ñ HPET èëè òàéìåðîì âûñîêîãî ðàçðåøåíèÿ, à òàêæå â "LP-8x81" è "LP-8x81 Atom" (òîëüêî îäíî ÿäðî)!
Ñáîðêà ÿäðà âåðñèè 2.6.33 íóæíà äëÿ êîíòðîëëåðîâ ôèðìû "ICP DAS" LP-8x81 è LP-8x81 Atom ïî ïðè÷èíå íàëè÷èÿ èìåííî äëÿ íåãî, ñ ïàò÷åì CONFIG_PREEMPT_RT, áèíàðíûõ äðàéâåðîâ "ICP DAS", äëÿ LP-8x81 Atom.
Ðåçóëüòàòû òåñòîâ ýòîãî ÿäðà:
Ïðîöåññ ñáîðêè è òåñòèðîâàíèÿ:
Ïëàòû îò "Diamond Systems" ñòàëè ïåðâûìè íà êîòîðûé òåñòèðîâàëàñü è ñòàáèëèçèðîâàëàñü OpenSCADA. Ïåðâîé ïëàòîé ñòàë îäíîïëàòíûé êîìïüþòåð ATH400 ôîðìôàêòîðà
PC/104, ïðåäñòàâëåíà íà ðèñóíêå íèæå. Íà ýòîì êîìïüþòåðå îêðóæåíèå ÎÑ, ïî íà÷àëó, óñòàíàâëèâàëîñü òðàäèöèîííûì ñïîñîáîì, à çàòåì ñîãëàñíî èçëîæåííîé âûøå êîíöåïöèè ñîçäàíèÿ ïðîøèâêè.
Àïïàðàòíûå õàðàêòåðèñòèêè ïëàòû:
Öåíòðàëüíûé ïðîöåññîð: | VIA Eden 400-660MHz |
Îïåðàòèâíàÿ ïàìÿòü: | 128MB, çàïàÿíî íà ïëàòó |
Ïîñòîÿííàÿ ïàìÿòü: | IDE (44) ïîðò ñ UDMA-33 |
Âèäåî ïîäñèñòåìà: | S3 Savage 4 Chipset ñ ðàñøèðåííûì 3D/2D âèäåî; ïîääåðæèâàþòñÿ ïëîñêèå ïàíåëè, CRT è LCD |
Àóäèî ïîäñèñòåìà: | ïðèñóòñòâóåò |
Èíòåðôåéñû/ïîðòû: | 10/100Mbps Ethernet; 4 RS-232 ïîñëåäîâàòåëüíûõ ïîðòà; 4 USB 1.1 ïîðòà; PS/2 êëàâèàòóðà è ìûøü |
Èñòî÷íèê ïèòàíèÿ: | +5VDC ±10% @ 2A |
Ðàáî÷èå óñëîâèÿ: | -40 ... +85°C |
DAQ: | 16AI (16 áèò, 100 êÃö), 4AO, 24DIO, 2CNTR |
Ïåðâîé çàäà÷åé ýòîé ïëàòû è OpenSCADA áûëà ðåàëèçàöèÿ ôóíêöèè âûñîêî÷àñòîòíîãî (10 ÊÃö * 8 êàíàëîâ) àðõèâàòîðà ñèãíàëîâ ãàçîâîãî êîìïðåññîðà äëÿ èçó÷åíèÿ ÿâëåíèÿ ïîìïàæà íà Àíàñòàñèåâñêîé ÃËÊÑ.
Âòîðîé çàäà÷åé ñòàë ïðîòîòèï ÏËÊ óçëîâ ýëåêòðîïîäñòàíöèé. Óæå äëÿ ýòîé çàäà÷è ïðîøèâêà ñîáèðàëàñü íà îñíîâå íîâîé ïàêåòíîé áàçû.  ðàìêàõ ýòîé çàäà÷è ìîäóëü îïðîñà äàííûõ ïëàò "Diamon Boards" áûë óíèôèöèðîâàí äëÿ ïîääåðæêè âñåõ ïëàò ïðîèçâîäèòåëÿ.
Âòîðîé ïëàòîé ñòàëà ïëàòà ÓÑÎ DMM32-AT, ïðåäñòàâëåíà íà ðèñóíêå íèæå. Ïëàòà èñïîëüçîâàëàñü äëÿ ñîçäàíèå ìàêåòîâ è ýìóëÿòîðîâ ïîëÿ òåõíîëîãè÷åñêîãî ÏÎ. Ïëàòà èìååò õàðàêòåðèñòèêè:
Èñòî÷íèê ïèòàíèÿ: | +5VDC ±10% @ 200mA |
Ðàáî÷èå óñëîâèÿ: | -40 to +85°C |
DAQ: | 32AI (16 áèò, 200 êÃö), 4AO, 24DIO, 2CNTR |
Èññëåäîâàíèå øóìîâûõ ñâîéñòâ âûñîêîèìïåäàíñíûõ âõîäîâ ïëàò îò Diamond Systems â ðàçëè÷íûõ óñëîâèÿõ ñâåäåíî â òàáëèöå íèæå:
Óñëîâèÿ | Âíåøíèé ÁÏ: Óðîâåíü øóìà, ì [Ãö] | Âíóòðåííèé ÁÏ: Óðîâåíü øóìà, ì [Ãö] | Ïðèìå÷àíèÿ |
(10 êÃö, ±0.625 Â, 20 ìêñ), Çàçåìëåíû-32 | 0.08 [-] | ||
(10 êÃö, ±5 Â, 20 ìêñ), Çàçåìëåíû-32 | 0.5 [-] | 0.35 [-] | |
(10 êÃö, ±5 Â, 20 ìêñ), Çàçåìëåíû-31, Íàãðóçêà ∞ | 5 [50, 270] | 18 [50, 150] | |
(10 êÃö, ±5 Â, 20 ìêñ), Çàçåìëåíû-31, Íàãðóçêà 1ìÎì | 10 [50, 270] | ||
(10 êÃö, ±5 Â, 20 ìêñ), Çàçåìëåíû-31, Íàãðóçêà 100êÎì | 7 [150, 50, 270] | 7 [-] | |
(10 êÃö, ±5 Â, 20 ìêñ), Çàçåìëåíû-31, Íàãðóçêà 10êÎì | 4.5 [100] | 6 [-] | |
(10 êÃö, ±5 Â, 20 ìêñ), Çàçåìëåíû-31, Íàãðóçêà 1êÎì | 0.9 [150] | 1 [-] | |
(10 êÃö, ±5 Â, 20 ìêñ), Çàçåìëåíû-31, Íàãðóçêà 100Îì | 0.5 [-] | 0.5 [-] |
MOPSlcdLX ïðåäñòàâëÿåò ñîáîé îäíîïëàòíûé êîìïüþòåð ôîðìôàêòîðà PC/104, ïðåäñòàâëåí íà ðèñóíêå íèæå. Äàííûé êîìïüþòåð ïðèâë¸ê âíèìàíèå ïî ïðè÷èíå ñðàâíèòåëüíî íåáîëüøîé öåíû, çà ñ÷¸ò îáû÷íîãî äèàïàçîíà ýêñïëóàòàöèè è ìåíüøåãî ýíåðãîïîòðåáëåíèÿ è êàê ñëåäñòâèÿ ìåíüøåãî íàãðåâà.
Àïïàðàòíûå õàðàêòåðèñòèêè ïëàòû:
Öåíòðàëüíûé ïðîöåññîð: | AMD LX800™ 500 MHz, áåçâåíòèëÿòîðíûé |
Îïåðàòèâíàÿ ïàìÿòü: | DDR-RAM-SODIMM ñîêåò |
Ïîñòîÿííàÿ ïàìÿòü: | IDE (44) ïîðò |
Âèäåî ïîäñèñòåìà: | âñòðîåííàÿ ãðàôèêà ñ ïîääåðæêîé âûâîäà íà ïëîñêèå ïàíåëè, CRT è LCD |
Àóäèî ïîäñèñòåìà: | íåò |
Èíòåðôåéñû/ïîðòû: | 10/100Mbps Ethernet (Intel® 82551ER); 2 RS-232 ïîñëåäîâàòåëüíûõ ïîðòà; 2x USB 2.0; PS/2 êëàâèàòóðà è ìûøü, Floppy, LPT |
Èñòî÷íèê ïèòàíèÿ: | +5VDC ±10% @ 1A |
Ðàáî÷èå óñëîâèÿ: | 0 ... 60°C |
Ïëàòà èñïîëüçîâàëàñü äëÿ îïðîáîâàíèÿ ñîçäàíèÿ ñòàíöèé/ïàíåëåé îïåðàòîðà ñ OpenSCADA, â ïîäîáíîì îêðóæåíèè. Â ïîñëåäñòâèè âñïëûë ðÿä ïðîáëåì ñ ýòîé ïëàòîé:
Íà äàííûé ìîìåíò, íà îñíîâå ýòîé ïëàòû, ãîòîâèòñÿ "Ïðîãðàììíûé îñöèëëîãðàô", äëÿ ÷åãî íà íå¸ óñïåøíî çàãðóæåíà ñîâðåìåííàÿ ïðîøèâêà ñ ÿäðîì "std-def" è äîóñòàíîâëåíà ïëàòà DMM-32X-AT, î êîòîðîé âûøå.
VSX104 ïðåäñòàâëÿåò ñîáîé îäíîïëàòíûé êîìïüþòåð ôîðìôàêòîðà PC/104, ïðåäñòàâëåí íà ðèñóíêå íèæå. Äàííûé êîìïüþòåð ïðèâë¸ê âíèìàíèå ïî ïðè÷èíå íåáîëüøîé öåíû è íèçêîãî ýíåðãîïîòðåáëåíèÿ (< 2Âò) è êàê ñëåäñòâèÿ ìåíüøåãî íàãðåâà. Îäíàêî â âèäó èñïîëüçîâàíèÿ íà íåé ïðîöåññîðà "Vortex86SX-300 ÌÃö" òðåáóåòñÿ îñîáûé ïîäõîä ê ôîðìèðîâàíèþ îêðóæåíèÿ ÎÑ, ïîñêîëüêó èñïîëüçîâàí íàáîð èíñòðóêöèé i486 è îòñóòñòâóåò ìàòåìàòè÷åñêèé ñîïðîöåññîð.
Àïïàðàòíûå õàðàêòåðèñòèêè ïëàòû:
Öåíòðàëüíûé ïðîöåññîð: | DM&P SoC Vortex86SX-300 ÌÃö |
Îïåðàòèâíàÿ ïàìÿòü: | 128 ÌÁ DDR2 RAM ðàñïàÿíî íà ïëàòå |
Ïîñòîÿííàÿ ïàìÿòü: | ñëîò CompactFlash Type I, microSD è 2 ïîðòà EIDE (Ultra DMA 100) |
Âèäåî ïîäñèñòåìà: | íåò |
Àóäèî ïîäñèñòåìà: | íåò |
Èíòåðôåéñû/ïîðòû: | 10/100Mbps Ethernet; 4 RS-232 ïîñëåäîâàòåëüíûõ ïîðòà; 2x USB 2.0; PS/2 êëàâèàòóðà è ìûøü, LPT, Ðåçåðâèðîâàíèå, SPI |
Èñòî÷íèê ïèòàíèÿ: | +5VDC ±10% @ 370mA |
Ðàáî÷èå óñëîâèÿ: | -40 ... 85°C |
DAQ: | 1 ïîðò 16-áèòíîãî GPIO |
Íà äàííûé ìîìåíò ðåøåíèé íà ýòîé ïëàòå íåò, îäíàêî ïëàíèðóåòñÿ ñîáðàòü äëÿ íå¸ îêðóæåíèå, âîçìîæíî äëÿ àâòîíîìíîé ñèñòåìû ó÷¸òà.
VDX-6354D ïðåäñòàâëÿåò ñîáîé îäíîïëàòíûé êîìïüþòåð ôîðìôàêòîðà PC/104, ïðåäñòàâëåí íà ðèñóíêå íèæå. Äàííûé êîìïüþòåð ïîñòðîåí íà ïðîöåññîðå "DM&P SoC CPU Vortex86DX- 800MHz", êîòîðûé ïðîèçâîäèòåëüíåå "Vortex86SX-300 ÌÃö" â ïðåäûäóùåì ðàçäåëå, îäíàêî è ýíåðãîïîòðåáëåíèå ýòîé ïëàòû óæå íå 2, à 4 Âàòà áîëüøå íà ñòðàíèöå ïðîåêòà
Ïðîìûøëåííûå êîíòðîëëåðû ñåìåéñòâà LP-8x81 ôèðìû
ICP DAS ÿâëÿþòñÿ ïåðâûì ïðîäóêòîì èç ñåðèè LinPAC, êîòîðûé ïîñòðîåí íà x86 ñîâìåñòèìîì ïðîöåññîðå, ïðåäûäóùèå êîíòðîëëåðû ýòîãî ñåìåéñòâà îñíîâàíû íà ïðîöåññîðå ñåìåéñòâà ARM. Êðîìå x86 ïðîöåññîðà ðàññìàòðèâàåìûå êîíòðîëëåðû îáëàäàþò çíà÷èòåëüíûìè ðåñóðñàìè îïåðàòèâíîé ïàìÿòè è äèñêîâîãî ïðîñòðàíñòâà. Âñ¸ ýòî ïîçâîëèëî ðàññìàòðèâàòü äàííûå êîíòðîëëåðû êàê ïåðâîãî êàíäèäàòà èç ïðîäóêöèè ICP DAS äëÿ àäàïòàöèè OpenSCADA â êà÷åñòâå ñðåäû èñïîëíåíèÿ áîëüøå íà ñòðàíèöå ïðîåêòà.
Ôèðìà Avalue, ñîâìåñòíî ñ å¸ äèñòðèáþòåðîì â Ðîññèè ôèðìîé
ElTech, ïðåäîñòàâëÿåò øèðîêèé ñïåêòð ïàíåëüíûõ ÏÊ, êîòîðûå ìîãóò èñïîëüçîâàòüñÿ íà÷èíàÿ ñ îáû÷íûõ îôèñíûõ ìîíîáëîêîâ è çàêàí÷èâàÿ ïðîìûøëåííûìè ñåíñîðíûìè ïàíåëÿìè â ôðîíòàëüíîì èñïîëíåíèè êëàññà IP65.  âèäó èñïîëüçîâàíèÿ ñòàíäàðòíîãî îáîðóäîâàíèå çàïóñê è ðàáîòà OpenSCADA íà íèõ íå âûçûâàåò ïðîáëåì áîëüøå íà ñòðàíèöå ïðîåêòà.
iROBO-3000a ïðåäñòàâëÿåò èç ñåáÿ áåçâåíòèëÿòîðíûé ïðîìûøëåííûé êîìïüþòåð ñ óñòàíîâëåííûì Intel Atom D425 1.8 GHz ñ VGA, 2xGb LAN, 4xCOM, 4xUSB, 1GB RAM, 1x2.5" SATA HDD 120GB, Mini-PCIe, 4x4 DIO, CF ñëîò, SIM Card ñëîò, Audio, WDT, ðàáî÷èé äèàïàçîí òåìïåðàòóð -5...+55°Ñ. Ïðîèçâîäèòåëüíîñòè äàííîãî êîìïüþòåðà äîñòàòî÷íî äëÿ âûïîëíåíèÿ êàê ôóíêöèé ñåðâåðà ñáîðà, êîíòðîëÿ è óïðàâëåíèÿ, òàê è ôóíêöèé ñòàíöèè âèçóàëèçàöèè. Îäíàêî ââèäó èñïîëüçîâàíèÿ íåïðîèçâîäèòåëüíîãî ïðîöåññîðà ñåìåéñòâà "Atom" âûïîëíåíèå ìàòåìàòè÷åñêèõ ìîäåëåé òåõíîëîãè÷åñêèõ ïðîöåññîâ ïîòðåáóåò âñåõ ðåñóðñîâ ïðîöåññîðà. Íàïðèìåð, ïðè èñïîëíåíèè ìàòåìàòè÷åñêîé ìîäåëè ÀÃËÊÑ ïðîöåññîð íàãðóæàåòñÿ íà 86%. Êîíòðîëëåð èìååò ñåðòèôèêàò "ÓêðÑÅÏÐÎ", ÷òî ìîæåò áûòü âàæíûì äëÿ ìíîãèõ ïîëüçîâàòåëåé íà òåððèòîðèè Óêðàèíû.
Ðàáî÷åå îêðóæåíèå OpenSCADA äëÿ ýòîãî êîìïüþòåðà ñòðîèëîñü íà îñíîâå ïàêåòíîé áàçû äèñòðèáóòèâà ALTLinux T6, à òàêæå ñâåæåñîáðàííîãî îêðóæåíèÿ ðàáî÷åãî ñòîëà
Trinity (TDE). Ñáîðêà îêðóæåíèÿ îñóùåñòâëÿëàñü íà îñíîâå âûøåîïèñàííîé êîíöåïöèè ñ ïîìîùüþ îáíîâë¸ííîãî ïðîôèëÿ "mkimage".  íîâûé ïðîôèëü òàêæå áûëà äîáàâëåíà öåëü "plc", îäíàêî å¸ ñóòü èçìåíèëàñü, ôàêòè÷åñêè ñòàâ êîïèåé öåëè "live", ÷òî ñòàëî âîçìîæíûì áëàãîäàðÿ âíåäðåíèþ íà ýòàïå ïåðâè÷íîé èíèöèàëèçàöèè ïðîçðà÷íîãî ìîíòèðîâàíèÿ ðàçäåëà ñ ìåòêîé "alt-live-storage" êàê îòðàæåíèÿ óïàêîâàííîé ôàéëîâîé ñèñòåìû ñ ïðîèçâîëüíûì äîñòóïîì íà ìîäèôèêàöèþ.  öåëîì ýòî ïîçâîëèëî ñîçäàòü ôèêñèðîâàííîå ÿäðî ïðîøèâêè ñ áàçîâûì íàáîðîì ïðîãðàììíîãî îêðóæåíèÿ ðàçìåðîì 300Ìá è âîçìîæíîñòüþ ñâîáîäíîãî ðàñøèðåíèÿ ïóò¸ì äîóñòàíîâêè íóæíûõ ïàêåòîâ èç äèñòðèáóòèâà.
 êà÷åñòâå îêðóæåíèÿ ðàáî÷åãî ñòîëà áûëî âûáðàíî "Trinity" ïî ïðè÷èíå íàëè÷èÿ ïðîáëåìû ôîíîâîãî àðòåôàêòèíãà â ñâÿçêå XOrgServer 1.10 + Qt4, à òàêæå ìàëîé ðåñóðñî¸ìêîñòè TDE ïðè âûñîêîé ðàçâèòîñòè è ñòàáèëüíîñòè.
Àðõèâ ïðîôèëåé ñáîðêè íîâîãî îêðóæåíèÿ ïîëó÷èë íàçâàíèå mkimage-profiles-6-kdesktop.tgz, à ïîñëåäíÿÿ ñáîðêà ïðîøèâêè
ALTLinux_6-OpenSCADA_0.8.1-TDE_3.5.13.1-i586-flash.tar.
Ôèðìà Advantech âûïóñêàåò øèðîêèé ñïåêòð îáîðóäîâàíèÿ äëÿ àâòîìàòèçàöèè, íà÷èíàÿ îò ïàíåëüíûõ ÏÊ è çàêàí÷èâàÿ ìîäóëÿìè ñáîðà äàííûõ
ADAM.
 ðàìêàõ ïðîåêòà ñèñòåìû ñáîðà è âèçóàëèçàöèè êîòëà ¹1 öåõà ÒÝÖ â ðóêè ïîïàë ïàíåëüíûé ÏÊ PPC-L126 è èíäóñòðèàëüíûé ÏÊ íà øàññè IPC-6608, ñ ïðîöåññîðíîé ïëàòîé PCA-6753.
Èíäóñòðèàëüíûé ÏÊ "PCA-6753" èìååò ñëåäóþùèå õàðàêòåðèñòèêè:
Öåíòðàëüíûé ïðîöåññîð: | Ìàëî-ïîòðåáëÿþùèé NS GXm-200 ÌÃö (áåçâåíòèëÿòîðíûé) |
Îïåðàòèâíàÿ ïàìÿòü: | 64 ÌÁ DIMM SDRAM |
Ïîñòîÿííàÿ ïàìÿòü: | SSD DiskOnChip® 2000, IDE (40 pin, UDMA 33, 256ÌÁ IDE Flash) |
Âèäåî ïîäñèñòåìà: | CX5530 VGA/LCD è 18-áèò LCD TFT |
Àóäèî ïîäñèñòåìà: | íåò |
Èíòåðôåéñû/ïîðòû: | 10/100Mbps Ethernet (RTL-8139); RS-232 + RS-232/422/485 ïîñëåäîâàòåëüíûå ïîðòû; 2 x USB 1.1 (õîñò), IR ïîðò; LPT; Floppy |
Èñòî÷íèê ïèòàíèÿ: | +5VDC ±10% @ 1.54A |
Ðàáî÷èå óñëîâèÿ: | 0 ... 60°C |
Äàííûé êîíòðîëëåð ÿâëÿåòñÿ óæå äîñòàòî÷íî ñòàðûì è íèçêîïðîèçâîäèòåëüíûì äëÿ ñîâðåìåííîãî ïðîãðàììíîãî îáåñïå÷åíèÿ îäíàêî äëÿ çàäà÷ ñðåäû èñïîëíåíèÿ ÏËÊ îí åù¸ ãîäèòñÿ è íà íåãî áûëà óñïåøíî çàãðóæåíà ïðîøèâêà íà îñíîâå ïàêåòíîé áàçû ALTLinux 5.1. Ïðè ýòîì î ðåàëüíîì âðåìåíè ðå÷ü íå âåëàñü, â âèäó îòñóòñòâèÿ òàéìåðà âûñîêîãî ðàçðåøåíèÿ (HPET).
Ïàíåëüíûé ÏÊ "PPC-L126" èìååò ñëåäóþùèå õàðàêòåðèñòèêè:
Öåíòðàëüíûé ïðîöåññîð: | VIA Eden 667 MHz |
Îïåðàòèâíàÿ ïàìÿòü: | Äâà 168-pin DIMM ñîêåò (128 ÌÁ) |
Ïîñòîÿííàÿ ïàìÿòü: | CompactFlash òèïà I/II, IDE (44 pin, UDMA 33/66/100, 10 ÃÁ) |
Âèäåî ïîäñèñòåìà: | VIA Savage4 2D/3D/Video, ñåíñîðíûé ýêðàí 12.1", ôðîíòàëüíàÿ ïàíåëü: IP65/NEMA4 |
Àóäèî ïîäñèñòåìà: | AC97 Ver. 2.0 |
Èíòåðôåéñû/ïîðòû: | 10/100Mbps Ethernet (RTL-8139); 3 x RS-232 + RS-232/422/485 ïîñëåäîâàòåëüíûå ïîðòû; 2 x USB 1.1 (õîñò); PS/2 êëàâèàòóðà è ìûøü; LPT |
Èñòî÷íèê ïèòàíèÿ: | 19VDC @ 3.3A |
Ðàáî÷èå óñëîâèÿ: | 0 ... 40°C |
Ïàíåëüíûé ÏÊ òàêæå îáëàäàåò ìàëûìè ðåñóðñàìè äëÿ çàïóñêà ñîâðåìåííîãî ãðàôè÷åñêîãî îêðóæåíèÿ, ïîýòîìó äëÿ óñòàíîâêè íà íåãî èñïîëüçîâàëñÿ äèñòðèáóòèâ "ALTLinux T6" ñ ðÿäîì ìåðîïðèÿòèé ïî îïòèìèçàöèè:
Ïðèâåäåííûå ìåðîïðèÿòèÿ ïîçâîëèëè âòèñíóòüñÿ â 128 ÌÁ îïåðàòèâíîé ïàìÿòè è ïîëó÷èòü ïðè ýòîì ðàçâèòîå è ïðîèçâîäèòåëüíîå ãðàôè÷åñêîå îêðóæåíèå. Äëÿ íàñòðîéêè ñåíñîðíîãî ýêðàíà ELO èñïîëüçîâàëñÿ ïàêåò ñ äðàéâåðîì "elographics" — "xorg-drv-elographics".  êîíôèãóðàöèîííûé ôàéë "xorg.conf" äîáàâëåíà ñåêöèÿ: