控制終端軟件的核心是嵌入式linux操作系統(tǒng),一切功能的實現(xiàn)都基于Linux操作系統(tǒng)完成,Linux本身作為一個桌面系統(tǒng),進入嵌入式操作系統(tǒng)領(lǐng)域時,需要解決的問題主要包括硬件支持、提供二次開發(fā)的環(huán)境以及小型化(裁減內(nèi)核)等,小型化的目的是在滿足操作系統(tǒng)基本功能和用戶特定需要的情況下,使內(nèi)核盡可能小,作為一個操作系統(tǒng),Linux內(nèi)核主要負責(zé)程序的管理與調(diào)度、內(nèi)存的管理及對外設(shè)的驅(qū)動和管理等,由于Linux內(nèi)核采用模塊化的設(shè)計,很多模塊可以獨立地加載或卸載,所以小型化就是對Linux內(nèi)核重新編譯,在編譯時仔細地選擇嵌入式設(shè)備所需要的功能模塊,同時刪除不需要的功能,這里只需要串口驅(qū)動、USB攝像頭接口驅(qū)動(包含USB Host,USB Core和USB Device)還有撥號網(wǎng)絡(luò)應(yīng)用,還要支持PPP、TCP/IP網(wǎng)絡(luò)協(xié)議,其他都可以刪除掉,使系統(tǒng)運行所需要的內(nèi)核顯著減小至1Mb以內(nèi)。
具體程序設(shè)計包括Bootloader啟動代碼、設(shè)備驅(qū)動程序(USB攝像頭接口驅(qū)動程序、串口驅(qū)動程序)、撥號、PPP及TCP/IP協(xié)議處理,監(jiān)控接收轉(zhuǎn)發(fā)控制程序等?刂屏鞒倘鐖D3所示。
a)系統(tǒng)加電后復(fù)位。
b)Bootloader初始化CPU、SDRAM、分配地址空間等。
c)Bootloader把Linux內(nèi)核的壓縮文件解壓到SDRAM中,同時把控制權(quán)從Bootloader移交到Linux。
Linux的內(nèi)核有兩種運行方式可供選擇。可以在Flash存儲器上直接運行,也可以加載到內(nèi)存中運行。Flash存儲器運行方式就是把內(nèi)核的可執(zhí)行映像燒寫到Flash存儲器上,系統(tǒng)啟動時從Flash存儲器的某個地址開始運行內(nèi)核,進入SDRAM繼續(xù)運行,這種做法能減少內(nèi)存需要,實際上很多嵌入式系統(tǒng)都采用這種方法,內(nèi)存加載方式把內(nèi)核的壓縮文件存放在Flash存儲器上,系統(tǒng)啟動時自動讀取壓縮文件并在內(nèi)存中解壓,然后開始執(zhí)行,這種方式相對較復(fù)雜,但運行速度更快,我們采用的就是這種方式。
Cisco PA-2E3= 2 Port E3 Serial Port Adapter Card Module
CELLVINE BDA-CDMA80-10-1?4-AA-XXX
TransElectric HRR-C08W21-10A
STELLAR ORBCOMM ST2500 Data Communicator ST250101227
CELWAVE 48610A Uplink: 824-849MHz Downlink 869-894MHz
MARS ANTENNA & RF SYSTEM M224810200015 MR-HSBDA60-XN
AVANTRY ODU-1-1-3-18 WitLine-2000
RS PRUFZEILEN VIT SELECTOR INSERTER SPRF 217.4012.04
Tektronix VIT 201 PAL INSERTION GENERATOR
Enlarge
Alvarion SU-E-4.9-3-BD-V?L BreezeACCESS VL-CH B-V 5.4GHz
A&M INST. FSCN 15309-265-847 METER 1R 6625-01-082-148?0
Enlarge
STR - LCS LOCAL CALL SIMULATOR PN: 028690 l@@k!!!
Digital View - Toch Screen LCD MONITOR BL-C095 11-12"
LOT OF 19 PARKER K3PX004 24 DC + BASIS VC3 3804
SII AMART LABEL PRINTER PLUS
SIGNET 18 GPM FLOMETER P/N P50940-1
HF-49% PART OF Pneumatic Machine
NITRIC HN-03 PART OF Pneumatic Machine
POWER ONE HTAA-16W-A HC24-2.4-A POWER SUPPLY
CUTLER HAMMER CE15CNS3 SERIES B1
CUTLER HAMMER CE15DN3 SERIES B1
2 X GORDOS Crouzet GA5-6D25-288 Relay 25AMP 24-280VAC
SMC E/P REGULATOR ITV2031-31N3N4-?X97 70-50 PSI + SENSOR
Powertech FSP090-50PL 90 Watt Flex ATX Power Supply
SMC E/P REGULATOR ITV2011-31N3N4-?X95 70-15 PSI + SENSOR
ADVANCE POWER MRE2400 RECTIFIER MRE24H54B01
MITSUBISHI HA-FH55-UE-S2 5000rpm AC SERVO MOTOR
AB ALLEN BRADLEY N-3412-2-H00AA 193528 MOTOR
BIRD DIRECTIONAL POWER SENSOR 4021 0.3 - 1000 Watts
NC Nor Cal ESVP-1502-NWB-B Pneumatic Angle Valve
CKD AMC-V-X51-DB Valve
Hitachi 2M130 G0=010011 MAGNETRON
DPT PM3755F U2 PCI SmartRAID V Millennium HA-0935-05-4D
Reliance Electric E288 0288-32-003 SERVO MOTOR
VCORN 4 CA356-00261 PCI CONVERT CA256-0031
Acopian VB24G350M-230 Regulated Power Supply
Acopian VB24G210M-230 Regulated Power Supply
HP A4318A A4125A C200 12/20 PLEX
Zellweger MDA Scientific Primer Flow Module 872100-1
Etasis EPR-2251 Redundant Dual AC Power Supply 230W
Zellweger MDA Scientific SECONDARY Flow Module 872770
501059 DVB-MUX D 10 INPUT 501059 REV C
SCOPUS 532960-001-00 MODULE
203961 DVB-OVER-IP BOARD FOR ENCODER 501943
ATM ADAPTER 204197 ATM/G703/DVB-AD?APTOR 501194 REV A
OFEK U-375B C-375A 43-00 E-T MODULE
LOT OF 2 optibase MGW-200 MGE200 Modules
SMARTCARD TANDBERG TELEVISION ECO-C30 9404.30 295123870
OPTIMA 2349-32156-00 SDI+2nd STEREO 500698 MODULE
AGILENT 84904L 11 dB ATTENUATOR 24 VOLT DRIVE DC 40GHz
TELEDATA RELAY CARD REV-A ME294V00995 MUDELE
2 X AGILENT / HP 8496H 110 dB ATTENUATOR 24V DC 18GHz
LOT OF 3 RADGUARD clPro-3000 clPro-2500 clPro-CA
AGILENT / HP 84904L 11 dB ATTENUATOR 24V DRIVE DC 40GHz
Microtest MT350S 2935-4001-02 Scanner w/ Super Injector
AGILENT / HP 84907L 70 dB ATTENUATOR 24V DRIVE DC 40GHz
RADWARE Director 1904672 CID1000/ASII/5x?GB+16xFE 256MB
HP A3262-60045 HP9000 PCBA REGULATOR
LOT OF 8 ANTRIEBSTECHNIK GEFEG M48x50/I + S5 9253 MOTOR
Item title
AGILENT/HP 84904K 11 dB ATTENUATOR 24V DRIVE DC 26.5GHz
LOT OF 4 LIN ENGNEERING 5618L-60S 1.3A MOTOR
LOT OF 5 GLOBE MOTOR 403A677-MOTOR 24 VDC K-240
LOT OF 7 GLOBE MOTOR 455A116-3 MOTOR
LOT OF 2 GLOBE MOTOR 455A115-3 MOTOR
LANNET SH-EMA ETHERNET NETWORK MANAGEMENT MODULE NEW!
LENswitch LSE404S LSE-404S/RJ 860009 MODULE
IBM ServeRAID SCSI Controller 37L6892 w/37L6902 4 ports
CENTRECOM ALLIED TELESIS AT MR122T MICRO REPEATER
VARIAN 111035001 REV 1
MOTOROLA 300 POINTS SCANNER F2682D
RS - NICAM DEMODULATOR 2067.5607 847899 008 1 01
Wandel & Goltermann IBT-10U ISDN TESTER BN 7530
Enlarge
AIPHONE MODEL: PD-2 JNSPECTED 6532915 Power Supply
C.N.Roodb.V Electronics - Audio Comprator Type: AC-12
UniVolt MODEL DT-2200 MINI CLAMP METER
Oriel MODEL: 68735 DC Regulated Power Supply
Turbine Engine wheel for collectors
Enlarge
ALLIED TELESIS AT-270 IEEE 802.3 COMPLIANT TRANSCEIVER
MKS TYPE 640 PRESSURE CONTROLLER 640A-26197 1000 TORR
JVC AC POWER ADAPTER AA-V6EG & Battery 9.6V-1400mAh
SWAGELOK SS-HFS3B-HF41-P?S PRESSURE REGULATOR 1000 PSI
APPLIED MATERIALS 0090-35042 0100-35079 0020-01979
SMC DeviceNet EX160-DDN1A AMAT B3052007-61886
Emass Panel w/200159-A & 200160-A LPN1 DMC 20481
APPLIED MATERIALS 0100-00572 GAS PANEL DISTRIBUITON
Emass w/200159-A & 200160-A LPN1 DMC 20481
SMC GAS PANEL COMMUNICATION BOX IN587-04-A VV100-49-X8
SUN Penguin PWA-SunPCi PC+M 411693500005
CUTLER-HAMMER 13104RS5020 COMET SERIES PERFECT PROX
MKS BARATRON 872B13TME2MT1 Pressure Transducer 1000Torr
APPLIED MATERIALS 0190-27729 SMC NP420-DN1 Manifold
APPLIED MATERIALS 0010-77680 SMC NP420-DN1 Manifold
Berkeley Process USAU-11-28-UR Multi Axis Servo Control
EMOTEQ BLDC Motor Amplifier BBH03401-L05-H5 301081
2 X COMPAQ StorageWorks SAN Switch 2/16-EL 283056-B21
BOSCH 058 07-11-28 2 0 390 257 693 CHP 24V CGS HSC100
LOT OF 4 KOLLMORGEN AKM24F-ENM2C-00 DANAHER SERVO MOTOR
LOT OF 4 COMAIR ROTRON SPRINT ST12ZOPX 5404262-01 FAN
4 X CONTINUOUS 24+2 ETHERNET SWITCH PSB XB 05677 05675
RADWARE 1904690 DP6000/AS5/2xGB?/8x10/100/1000 1GB/2GB
RADWARE 19046856 DP3020 AS4+SME 8GBIC 512MB/1G
RADWARE AppDirector 6000/AS5 1913681 2xGE+8x10/1GB/2?GB
RADWARE 19238019 DefensePro 10016 ODS3-S1/2CPU/2U 8GB
CERAGON FIBEAIR 1528-7 01-3126-0 FOR PARTS/REPAIR AS IS
IntraServer 8241C-S 2137-00 SCSI CPCI Breakout MODULE
TELKOOR PS360 POWER SUPPLY MODULE 100-240 VAC 47-63Hz
IntraServer 8241C-R 2138-00 SCSI CPCI Breakout MODULE
Ametek 240V Vacuum Motor 150358 5-90278-61 E 06430076S
Schneider Electric TWIDO TWDDRA8RT 0960-2507 CONTROLLER
RADCOM UQAN-TALK Omni-Q Solution Test of the Art
ASUS 08G27SF01207 S7F EXTERNAL ODD BD NLQCD1000
ROC SUP 1987 K 77A001156 BOARD
CIRRUS LOGIC GD542X REV Z BOARD
LOT OF 2 ROC PCA-6155 Rev .A1 BOARD
REDLINE NETWORKS T | X 2400 TX2400 WEB ACCELERATOR
45900183 HIGH PURITY VALVE DIAPHRAGM, SPRINGLESS 125PSI
45800348 HIGH PURITY VALVE DIAPHRAGM SPRINGLESS 125PSI
d)開始執(zhí)行SDRAM中的代碼,Linux內(nèi)核初始化,完成堆棧,中斷的分配等。
e)加載串口驅(qū)動模塊和USB攝像頭驅(qū)動模塊,完成串口和USB口的初始化。
f)運行PPP撥號程序,通過CDMA網(wǎng)絡(luò)與Internet進行連接,在Linux下的PPP包是專門為解決Modem撥號上網(wǎng)問題而編寫的,并且是公開源代碼的,PPP撥號腳本程序主要是通過調(diào)用pppd和chat這兩個應(yīng)用程序,并通過AT指令實現(xiàn)對Modem的操作。
至此,已經(jīng)建立了從圖像采集到圖像傳輸?shù)耐暾那度胧奖O(jiān)控系統(tǒng),但是,作為一個嵌入式操作系統(tǒng),他是為某一專門的用途而設(shè)計的。運行不同的用戶應(yīng)用程序,就可以實現(xiàn)用戶要求的不同功能,生動地體現(xiàn)了嵌入式系統(tǒng)的靈活性。
我們運行的用戶程序是一個無限循環(huán)的過程,控制終端在不斷等待拍照請求,通過比較識別認為有請求后,CPU通過USB攝像頭驅(qū)動控制攝像頭拍照,同時接收圖片并發(fā)送控制中心,或通過SMTP協(xié)議,發(fā)送到的Email地址,完成一次請求。