1. Trang chủ
  2. » Công Nghệ Thông Tin

Tài liệu Bài 1: Tổng quan về hệ điều khiển doc

31 577 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 31
Dung lượng 1,31 MB

Nội dung

1 Các h thigianthc–Giithiu Ngô Khánh Hiu Các h thigianthc–Giithiu Ngô Khánh Hiu 1 Tng quan v h tin hcthigianthc (1/5) -H tin hcthigianthcnhn các thông tin v trng thái ca quá trình bên ngoài, x lý các d liu, và tùy thucvàokt qu mà đa ra "quyt đnh" tác đng đn môi trng bên ngoài trong điukin các ràng buc nghiêm ngt v thigiannhm bo đm trng thái n đnh ca quá trình. -Mtchng trình thigianthc không có các đc tính thng thy  các chng trình tun t: ⇒ không có s ràng buc nào giaktqu tính toán vithi gian tính toán, ⇒ có kh nng tái s dng (comportement reproductible). H thigianthclà h môi trng song song 2 Các h thigianthc–Giithiu Ngô Khánh Hiu 2 Tng quan v h tin hcthigianthc (2/5) - Khái nim"song song" (Parallélisme) trong h tin hccóth đchiu đn gin theo các cách sau: (1) H tin hc hình thành t nhiu máy tính (2) H tin hcch gmmt máy tính nhng có nhiuvix lý (processeurs) (3) H tin hcch gmmtmáytínhvimtvix lý (mono-processeur) nhng có kh nng qun lý thi gian tính toán theo "khong thi gian" xác đnh (tranches de temps). Khái nim "song song" nu đchiu theo ngha này còn đcgi là "pseudo-parallélisme". - Mt vòng lp: ng mi ln lp s thchinvic tính toán mtítca "tâche 1", mtítca "tâche 2",… và c th cho đn khi các "tâches" kt thúc vic tính toán. - Chia mtchng trình tin hcthigianthc làm hai phn : phn I liên quan đn victhit k (conception) các "tâches" cho chng trình; phn II gii quyt vn đ "parallélisme" hay "pseudo-parallélisme" gia các "tâches". Các h thigianthc–Giithiu Ngô Khánh Hiu 3 Tng quan v h tin hcthigianthc (3/5) - Phân loi các h thng "song song" (Système parallèle): (2) SIMD (Single Instruction Multiple Data): cùng thchin chung mtlnh (instruction) nhng mi mt "ouvrier" s tính các phn khác nhau hay các d liu khác nhau. (1) Dng dãy tuyn tính: h thng song song "pipeline" (dng cu trúc ca "processeur" hay "microprocesseur" cho phép thchincùngmtlúc nhiulnh (instructions). (3) MIMD (Multiple Instruction Multiple Data): cho phép cùng mtlúcthc hinnhiu "tâches" khác nhau (lu ý: mt "tâche" có th gimthay nhiulnh). (4) SPMD (Single Program Multiple Data): là dng đc bitcaMIMD,  mi thi đim trong quá trình thchinmtchng trình (program), mt "tâche" không th đc tính  hai hay nhiu ni khác nhau (lu ý: mt chung trình là tphpcamt hay nhiu "tâche"). 3 Các h thigianthc–Giithiu Ngô Khánh Hiu 4 Tng quan v h tin hcthigianthc (4/5) - Phân loi tng quát các h thng tin hc (Systèmes informatiques): (2) Các h tng tác (Systèmes interactifs): là h đchiutheongha d liu đcto ra bis tác đng vi"môi trng" bng nhiuhínhthc khác nhau nh: bàn phím, file d liu, mng, chut, c tính v thi gian trong trng hp này không có nh hng nào khác ngoài cm giác không thoi mái khi làm vic (aspect confort de travail) hay cht lng phcv (qualité de service). (1) Các h bin đi (Systèmes transformationnels): là các h s dng các d liu đu vào (input) đc cung cp lúc khai báo ban đu, sau đó x lý các d liu đó đ xut ra các d liu đu ra (output) mà không có bt c ràng buc nào v thi gian. (3) Các hđiukhin hay phn ng (Systèmes de contrôle-commande ou réactifs): là các h có mi quan h vi môi trng thct thông qua các d liu đu vào, tuy nhiên khác vih tng tác, h điukhinhayphn ng có s ràng buc bt bucv thigian di c ác hình thcnh: thigianphn ng (temps de réaction), hn thigianphn hoàn thành (temps d’une échéance à respecter), Các h thigianthc–Giithiu Ngô Khánh Hiu 5 Tng quan v h tin hcthigianthc (5/5) 4 Các h thigianthc–Giithiu Ngô Khánh Hiu 6 Phân loi h điukhin (Système de contrôle-commande ou réactif) (1/2) T đnh ngha h điukhinta cóth phân loi h điukhinda theo các yêu cu (specifications) riêng cah nh sau: (1) Các h thigianthc (Systèmes temps réel): là h điukhinmàyêucu ng x "đúng/chính xác" (exactitude) cacácng dng ca nó không nhng ch ph thucvàokt qu (résultat), mà còn ph thucvàothigianmàkt qu đó đcto ra. Và nu các ràng bucv thi gian (contraintes temporelles) ca ng dng không đc tuân th, ta nói h b sai sót/li (défaillance du système). Da vào các ràng bucthi gian này ta có th chia h thigianthc làm 2 loi: 1.a. ràng bucthigianlng/tng đi (contraintes temporelles relatives ou lâches): là h có th chu đc/b qua (tolérance) mts li xác đnh v thigiannu phát sinh trong quá trình vn hành (ví d: trò chi đint, các ng dng v nghe nhìn, đinthoi di đng,…). 1.b. ràng bucthigiancht/nghiêm ngt (contraintes temporelles strictes ou dures): là h không chp nhn/b qua bt k li v thi gian nào phát sinh trong quá trình vn hành (ví d: thit b đint hàng không, tàu v tr, xe hi, h thng đng st…). Các h thigianthc–Giithiu Ngô Khánh Hiu 7 Phân loi h điukhin (Système de contrôle-commande ou réactif) (2/2) (2) Các h điukhin "embarqué" (Systèmes de contrôle-commande embarqué): đchiu đn gin là h đc tích hptrêncácthit b hay các h thng khác đ điukhin quá trình hot đng cathit b hay h thng đó. (3) Các h điukhin "dédié" (Systèmes de contrôle-commande dédié): đchiu đn gin là các h "cng" hoc "mm" (architectures matériels ou logiciels) đcthit k dành riêng cho mt ng dng c th (ví d: ht nhân hay lõi (noyau) camt microprocesseur, vi x lý (processeur), ). (4) Các h điukhin "distribué" (Systèmes de contrôle-commande distribué): đchiu đn gin là mtcu trúc phn "cng" (l’architecture matériel) đc hình thành t nhiuvix lý (processeurs) liên kt vi nhau thông qua mt "bus" hay mth thng mng (réseau). 5 Các h thigianthc–Giithiu Ngô Khánh Hiu 8 Các đc tính c bn cah điukhin (1/6) Mi quan h tng h giah điukhinvi môi trng bên ngoài mà nó điukhincóth phân chia thành hai phn sau:  phn "quan sát" (observations) thông qua các cm bin (sensors), cho phép thu nhn các thông tin dihìnhthc các ngt (interruptions, information tout ou rien), hoc các giá tr đo (mesures, information continue) t quá trình thct mà h điukhin.  phn "hành đng" (actions) đcthchinnh các c cu chp hành (actuators), cho phép phn ng li quá trình th ct mà h điukhin dihình thccáclnh (commandes) làm thay đitrng thái hinhànhcah thng, hoc đn gin là dihìnhthc các hinth (affichage) nh diodes, bóng đèn, màn hình hinth, thit b hinth,… Các h thigianthc–Giithiu Ngô Khánh Hiu 9 Các đc tính c bn cah điukhin (2/6) Mt ng dng cah điukhin trong điukhin quá trình đtcháyca đng c 6 Các h thigianthc–Giithiu Ngô Khánh Hiu 10 Các đc tính c bn cah điukhin (3/6) Các đc tính c bn cah điukhinlà: (1) rt đa dng các thit b đu vào và đu ra (dispositifs d’entrées/sorties): d liu đu vào yêu cu, đc cung cp bicáccm bin, và các d liu đu ra cung cp cho các c cu chp hành có các kiud liu (types) rt đa dng (liên tc, rirc, "tout ou rien", hoc "analogique"). (2) có kh nng tính toán song song (comportements concurrents): tphp tt c các d liuthct t bên ngoài, và "mng" (le réseau) cho phép nhpcácd liudng tin nhn (messages) không đc đng b (ne sont pas synchronisés) so vis phát trinca chúng. iunàydn đn, h thng tin hcphi có kh nng chp nhnnhng s khác bit đng thi ca các tham s (variations simultanées des paramètres). Các h thigianthc–Giithiu Ngô Khánh Hiu 11 Các đc tính c bn cah điukhin (4/6) Các đc tính c bn cah điukhinlà: (tip theo) (3) tuân th các ràng bucv thi gian (contraintes temporelles): đc tính trc đó cah điukhin đt ra cho h thng tin hcmtmt phi có mt kh nng "phn ng" (réactivité) đ đ xét ht tt c các ng x đng thi (comportements concurrents), mt khác phi tr licácng x đó bng cách to ra các lnh trong tuân th mtgiihn thi gian (un délai) tng ng/phù hpvi tính đng hccah thng (la dynamique du système) (4) s chc chn trong hot đng (sureté de fonctionnement): các h điu khin thng đcs dng trong các ng dng mà  đó yêu cu  mc đ rt quan trng v s an toàn vì lý do chi phí (cout) hoc tính mng ca con ngi (vies humaines).  đáp ng đcyêucu này, rt cn thit phi bo đm tính chc chn trong hot đng cacách điukhin thông qua các bin pháp nh phát trin"chc chn", tests, các phng pháp "formelles", các d đoán (prévisibilité), déterminisme, tolérance aux fautes, redondance,… 7 Các h thigianthc–Giithiu Ngô Khánh Hiu 12 Các đc tính c bn cah điukhin (5/6) So sánh tính đng hccacácng dng khác nhau cah điukhin Các h thigianthc–Giithiu Ngô Khánh Hiu 13 Mtvàing dng cah điukhin (6/6)  Robot sn xut : mt robot, thchinmthot đng c th trong mtchui sn xut, phi hoàn thành công viccanótrongkhong thigianc đnh xác đnh bi dây chuynch to. Nu thi gian này quá smhoc quá tr sn phm ch to s b phá hyhoc làm h hng dn đn các thithi v kinh t hoc con nginghiêmtrng.  Robot thm dò/thám him : robot này phi có kh nng t dch chuyntrongmt phm vi mà v c bn là không bit rõ trc(nh vùng nhim phóng x gn mt ti nn v phóng x, hành tinh,…). iu quan trng đivi các robot loi này là chúng phi có th phn ng li các chng ngi vtc đnh hoc di đng đ tránh b mt lái hay b kt. inthoi di đng : h thng điukhinphi có kh nng hoàn thành nhiuchc nng mà trong đó mts có ràng bucv thi gian cao đ có cht lng phcv tt (QoS, Quality of Service). Chc nng đu tiên là truynvànhn tín hiuging nói (577 µs ging nói đcphátchomi 4.6 ms, và 577 µs ging nói đcnhn cho mi 4.6 ms  các khong cách khác nhau). Vi vycn phi 8 Các h thigianthc–Giithiu Ngô Khánh Hiu 14 Cu trúc ca các ng dng cah điukhin (1/16)  Cu trúc phn mm (Architecture logicielle) (1/14) ng x đng thica các tín hiu đcth hin didng các "événements" và các đi lng thc bên ngoài (grandeurs physiques externes) dn đn mô t/th hinmôi trng điukhinnh là mth thng bt buc song song. Cu trúc phn mmcóth đáp ng ttnht đ tr licácng x song song ca quá trình điukhin bên ngoài (comportement parallèle du procédé externe) là cu trúc "multitâche" (multi-task hay multiprogrammation). Các h thigianthc–Giithiu Ngô Khánh Hiu 15 Cu trúc ca các ng dng cah điukhin (2/16)  Cu trúc phn mm (Architecture logicielle ) (2/14) “In computing, multitasking is a method by which multiple tasks, also known as processes, share common processing resources such as a CPU. In the case of a computer with a single CPU, only one task is said to be running at any point in time, meaning that the CPU is actively executing instructions for that task. Multitasking solves the problem by scheduling which task may be the one running at any given time, and when another waiting task gets a turn. The act of reassigning a CPU from one task to another one is called a context switch . When context switches occur frequently enough the illusion of parallelism is achieved. Even on computers with more than one CPU (called multiprocessor machines), multitasking allows many more tasks to be run than there are CPUs.” (Trích ngun Wikipedia) 9 Các h thigianthc–Giithiu Ngô Khánh Hiu 16 Cu trúc ca các ng dng cah điukhin (3/16)  Cu trúc phn mm (Architecture logicielle ) (3/14) “Operating systems may adopt one of many different scheduling strategies, which generally fall into the following categories: - In multiprogramming systems , the running task keeps running until it performs an operation that requires waiting for an external event (e.g. reading from a tape) or until the computer's scheduler forcibly swaps the running task out of the CPU. Multiprogramming systems are designed to maximize CPU usage. - In time-sharing systems, the running task is required to relinquish the CPU, either voluntarily or by an external event such as a hardware interrupt. Time sharing systems are designed to allow several programs to execute apparently simultaneously. - In real-time systems, some waiting tasks are guaranteed to be given the CPU when an external event occurs. Real time systems are designed to control mechanical devices such as industrial robots, which require timely processing.” (Trích ngun Wikipedia) Các h thigianthc–Giithiu Ngô Khánh Hiu 17 Cu trúc ca các ng dng cah điukhin (4/16)  Cu trúc phn mm (Architecture logicielle ) (4/14) 10 Các h thigianthc–Giithiu Ngô Khánh Hiu 18 Cu trúc ca các ng dng cah điukhin (5/16)  Cu trúc phn mm (Architecture logicielle ) (5/14) (1) “tâches" nhp/xut (tâches d’entrées/sorties): đây là các "tâches" cho phép tip cnvicácd liu bên ngoài thông qua các "cartes" giao tip nhp/xut, và các cm bin (capteurs), các c cu chp hành (actionneurs) liên kt trctip vi quá trình điukhin. Các "tâches" này có th đckíchhot mt cách đu đn (façon régulières) hoc bng "ngt" (par interruption). (2) “tâches" x lý/tính toán (tâches de traitement): các "tâches" này to nên phn trung tâm ca ng dng. Nó tích hp các phng pháp x lý tín hiu (traitements de signaux) nh phân tích ph, s tng đng, x lý hình nh,…; các quy lut điukhin (lois de commande) nh điukhin có chu k theo thi gian, điukhinkiu "tout ou rien", điukhin PID,… Trong khuôn kh ca môn hc này, ta có th xem các "tâches" x lý/tính toán nh là các hp đen mà  đó phn x lý/tính toán catng "tâche" s là phm vi cacáclnh vc liên quan nh x lý tín hiu, x lý hình nh, điukhint đng,… Các h thigianthc–Giithiu Ngô Khánh Hiu 19 Cu trúc ca các ng dng cah điukhin (6/16)  Cu trúc phn mm (Architecture logicielle ) (6/14) (3) “tâches" qun lý giao tip ngis dng (tâches de gestion de l’interface utilisateur): đây là các "tâches" cho phép hinth trng thái ca quá trình điu khin, cng nh vicgiaotip vingis dng. Theo đó, ngi điukhincó th hiuchnh các d liu điukhinhoc thay đicáclnh điukhin. Các "tâches" này có th rt phctp và đt v mt thi gian tính toán nu giao din điukhincókích thc "quan trng" (de taille importante) nh bng điukhin trong bung lái máy bay (tableau de bord) hoc thuckiugiao đin đ hanh hinth 3D,… (4) “tâches" thông tin liên lc (tâches de communications): các "tâches" này đc to ra đ dành cho vicqun lý vicgivànhn các "messages" trong mt hoc nhiumng hoc thit b kt ni (réseaux ou bus de terrain). Nu các "tâches" dng này xut hin trong ng dng cah điukhinthìng dng đcgi là "phân phi" (distribuée ou répartie). [...]... trúc ph n m m (Architecture logicielle) (9/14) - Synchronisation: ây là ki u k t n i gi a hai hay nhi u "tâches" th hi n m t m i quan h tr c sau (une relation de précédence d’exécution) gi a chúng - Communication: ây là ki u k t n i gi a hai hay nhi u "tâches" th hi n m t m i quan h tr c sau nh ng có b sung thêm s chuy n d li u (le transfert de données) gi a chúng - Partage de ressources: ây là ki u k... u Các h th i gian th c – Gi i thi u C u trúc c a các ng d ng c a h 29 i u khi n (16/16) C u trúc ph n c ng (Architecture matérielle) (2/2) C u trúc ph n c ng gi m t vai trò r t quan tr ng trong các ng d ng h i u khi n Nó liên quan m t m t n s k t n i tr c ti p v i môi tr ng th c t nh vào các h th ng nh p/xu t a d ng (une grande diversité de systèmes d’entrées/sorties); m t khác n thi t b tin h c ph... “asynchrone”: mô hình này s nh n th c th i i m kích ho t c a t t c d ki n i u khi n (l’occurrence de tout événement) c ghi nh n ngay l p t c b i h th ng cân nh c tính ch t kh n (urgence) hay tính ch t quan tr ng c a chúng Hay nói cách khác, các "tâches" c a mô hình "asynchrone" là các "tâches" có th ng t (interruptibles ou préemptibles) Ngô Khánh Hi u 12 24 Các h th i gian th c – Gi i thi u C u trúc... hành m t giai o n tr c ó (une reprise d’exécution à une étape précédente) Sau giai o n phân tích (l’analyse) và thi t k (la conception) ng d ng, ta thu th c c t p h p các "tâches" hay các "activités" có quan h l n nhau hi n vi c i u khi n c a quá trình Các "tâches" này thu c v các nhóm khác nhau nh li t kê trên Cách th c phân chia theo ch c n ng này có th c s a i trong tr ng h p áp d ng ph ng pháp thi... a thu t ch t l ng cao xét v khía c nh c u trúc ph n m m, v a gia t ng kh n ng v b o d ng/s a ch a (maintenabilité) và m r ng/phát tri n (évolutivité) N u nh vi c ki m tra (Test/Validation), gi vai trò quan tr ng s ng còn trong vi c t c ch t l ng c a h th ng, có th c th c hi n d dàng trong các ng d ng tin h c truy n th ng (nh các programmes tính toán…) thì i v i các ng d ng c a h i u khi n vi c ki m... c a thi t k s b vi c phân chia ti p t c h th ng cho n c p mô t chi ti t/c th nh t t ng b ph n c u thành c a nó nh : các l a ch n "algorithmes", mô t chi ti t t ng "tâche", "fonction", c u trúc d li u, quan h gi a các "tâches"… Ngô Khánh Hi u Các h th i gian th c – Gi i thi u S phát tri n c a các Vòng phát tri n c (3) ng d ng c a h 35 i u khi n (6/27) i n "Cascade" (5/5) Giai o n “Implémentation": giai... n này D a vào c tính h a, ngôn ng này cho phép không nh ng tri n khai các khái ni m thi t k , mà còn có th tích h p v i các b ph n c a ng d ng th c t trong m t môi tr ng ng nh t liên t c m t cách tr c quan LabVIEW là m t trong s nh ng ngôn ng h a trong quá trình phát tri n c a các ng d ng c a h i u khi n Ngô Khánh Hi u 18 36 Các h th i gian th c – Gi i thi u S phát tri n c a các ng d ng c a h i u khi... (5) Giai o n “tests d’intégration": là giai o n ki m tra c ti n hành sau giai o n "tests unitaires" nh m m c ích ki m tra s ho t ng c a các thành ph n c a h th ng trong s v n hành t ng th c a nó: m i quan h gi a các b ph n; s ho t ng c a các "tâches" d a trên các b ph n này; các c ch b o m "communication/synchronisation" gi a các "tâches"… (6) Giai o n “validation": là giai o n cho phép ki m tra tính... u ó m t m t giúp chu n b t t h n cho giai o n "tests et validation"; m t khác c nh và xuyên su t các yêu c u nh ng giai o n ti p theo c a vòng phát tri n Tuy nhiên, i v i các mô hình "dirigés par les documents" thì ph n l n các ý t ng ban u c a h c xác nh giai o n "spécification" u d ng ch a hoàn ch nh, nên r t có nhi u kh n ng nh ng "code" hay nh ng thi t k (conception) a ra trong các giai o n ti . điukhin (1/6) Mi quan h tng h giah điukhinvi môi trng bên ngoài mà nó điukhincóth phân chia thành hai phn sau:  phn " ;quan sát". matérielle ) (2/2) Cu trúc phn cng gi mtvaitròrt quan trng trong các ng dng h điukhin. Nó liên quan mtmt đn s kt nitrctip vi môi trng

Ngày đăng: 19/01/2014, 20:20

TỪ KHÓA LIÊN QUAN

w