Đăng ký Đăng nhập
Trang chủ XÂY DỰNG PHÒNG THÍ NGHIỆM ẢO LÝ THUYẾT MẠCH TRÊN CƠ SỞ MẠNG MÁY TÍNH VÀ CÁC THIẾ...

Tài liệu XÂY DỰNG PHÒNG THÍ NGHIỆM ẢO LÝ THUYẾT MẠCH TRÊN CƠ SỞ MẠNG MÁY TÍNH VÀ CÁC THIẾT BỊ ẢO CHUYÊN PHỤC VỤ CHO CÔNG TÁC ĐÀO TẠO GIẢNG DẠY MÔN LÝ THUYẾT MẠCH

.PDF
70
124
78

Mô tả:

Lêi nãi ®Çu Khi x©y dùng mét phßng thÝ nghiÖm cho sinh viªn häc tËp nghiªn cøu, cÇn ph¶i trang bÞ kh¸ nhiÒu thiÕt bÞ hiÖn ®¹i vµ chuyªn dông. Trong thùc tÕ, do sù ph¸t triÓn m¹nh mÏ cña khoa häc kü thuËt, nªn c¸c hÖ thèng thiÕt bÞ phôc vô cho bµi to¸n kü thuËt lu«n ®−îc ph¸t triÓn kh«ng ngõng vµ v× sù h¹n chÕ vÒ kinh phÝ nªn c¸c phßng thÝ nghiÖm nhµ tr−êng khã cã thÓ trang bÞ ®Çy ®ñ vµ kÞp thêi c¸c thiÕt bÞ thùc ®Ó ®¸p øng nhu cÇu häc tËp vµ nghiªn cøu. §©y lµ mét trong nh÷ng nguyªn nh©n khiÕn cho c¸c sinh viªn khi ra tr−êng lóng tóng, bì ngì trong c¸c thao t¸c thùc hµnh vµ v× thÕ hiÖu qu¶ c«ng viÖc gi¶m ®i rÊt nhiÒu. Cã thÓ kh¾c phôc h¹n chÕ nµy b»ng c¸ch x©y dùng mét phßng thÝ nghiÖm ¶o cã ®ñ c¸c trang thiÕt bÞ hiÖn ®¹i víi môc ®Ých gióp c¸c sinh viªn cã thÓ lµm quen víi mÆt m¸y, thao t¸c trªn c¸c nóm nót, ®äc chØ sè thiÕt bÞ ®o mét c¸ch thµnh th¹o tr−íc khi lµm viÖc víi c¸c thiÕt bÞ thËt. ThiÕt bÞ ¶o cã nh÷ng lîi thÕ rÊt lín vÒ gi¸ c¶, chØ tiªu chÊt l−îng vµ tÝnh linh ho¹t so víi thiÕt bÞ thùc. Do vËy, viÖc x©y dùng mét phßng thÝ nghiÖm ¶o bao gåm c¸c thiÕt bÞ ®o l−êng hiÖn ®¹i cïng c¸c panel thÝ nghiÖm tæng hîp t¹o ra mét hiÖu qu¶ ®¸ng kÓ vÒ kinh tÕ vµ cã ý nghÜa rÊt lín trong c«ng t¸c ®µo t¹o, gi¶ng d¹y vµ nghiªn cøu t¹i c¸c nhµ tr−êng. Víi môc ®Ých nghiªn cøu, x©y dùng mét phßng thÝ nghiÖm ¶o Lý thuyÕt m¹ch trªn c¬ së m¹ng m¸y tÝnh vµ c¸c thiÕt bÞ ¶o chuyªn dông phôc vô cho c«ng t¸c ®µo t¹o gi¶ng day m«n häc Lý thuyÕt m¹ch , ®å ¸n cña em bao gåm c¸c néi dung chÝnh nh− sau: - Ch−¬ng 1: Tr×nh bµy vÒ ng«n ng÷ lËp tr×nh LabVIEW trong c¸c bµi to¸n ®iÒu khiÓn, ghÐp nèi, m« pháng thiÕt bÞ ¶o vµ c¸c kü thuËt lËp tr×nh t¹o thiÕt bÞ ¶o trªn LabVIEW. 1 - Ch−¬ng 2: Tr×nh bµy l−u ®å thuËt to¸n vµ c¸c b−íc thiÕt kÕ x©y dùng thiÕt bÞ ¶o cho phßng thÝ nghiÖm §o l−êng - Lý thuyÕt m¹ch. - Ch−¬ng 3: Tr×nh bµy vÒ phÇn mÒm EWB trong m« pháng nguyªn lý ho¹t ®éng cña m¹ch ®iÖn tö vµ c¸c b−íc x©y dùng mét bµi thÝ nghiÖm Lý thuyÕt m¹ch trªn EWB. - Ch−¬ng 4: Sö dông kÕt qu¶ nghiªn cøu cña c¸c ch−¬ng tr−íc ®Ó tæ chøc x©y dùng mét phßng thÝ nghiÖm ¶o §o l−êng - Lý thuyÕt m¹ch. Do h¹n chÕ vÒ thêi gian vµ tr×nh ®é nªn ®å ¸n kh«ng tr¸nh khái nh÷ng sai sãt. Em rÊt mong nhËn ®−îc c¸c ý kiÕn ®ãng gãp, chØ b¶o cña c¸c thÇy gi¸o vµ c¸c b¹n ®ång nghiÖp. Cuèi cïng em xin ch©n thµnh c¶m ¬n thÇy gi¸o PGS TSKH NguyÔn C«ng §Þnh, KS Cao H÷u T×nh, c¸c thÇy gi¸o trong khoa Kü thuËt §iÒu khiÓn vµ Trung t©m C«ng nghÖ M« pháng - HVKTQS ®· quan t©m vµ t¹o mäi ®iÒu kiÖn gióp ®ì em hoµn thµnh ®å ¸n cña m×nh. Xin ch©n thµnh c¶m ¬n T¸c gi¶ 2 Ch−¬ng 1: Kü thuËt lËp tr×nh hç trî t¹o thiÕt bÞ ¶o trªn LabVIEW 1.1. Kh¸i niÖm vÒ phÇn mÒm ®å ho¹ LabVIEW LabVIEW (Laboratory Virtual Istrument Engineerring Worbench) lµ mét ch−¬ng tr×nh øng dông ph¸t triÓn, dùa trªn c¬ së ng«n ng÷ lËp tr×nh ®å ho¹ G, th−êng ®−îc sö dông cho môc ®Ých ®o l−êng, xö lý, ®iÒu khiÓn tham sè vµ m« pháng thiÕt bÞ. Lµ mét ng«n ng÷ lËp tr×nh ®a n¨ng, gièng nh− C hoÆc BASIC, LabVIEW cã c¸c th− viÖn hµm cho c¸c nhiÖm vô kh¸c nhau. Víi môc ®Ých x©y dùng mét ng«n ng÷ chuyªn dông cho c¸c bµi to¸n khoa häc kü thuËt, c¸c th− viÖn hµm ®−îc cung cÊp bëi LabVIEW rÊt m¹nh, phong phó vµ lu«n ®−îc ph¸t triÓn ®Ó t−¬ng thÝch víi sù ph¸t triÓn cña phÇn cøng vµ cña c¸c yªu cÇu thùc tiÔn. Cã thÓ kÓ ra mét sè th− viÖn hµm sau: - Analysis VIs: Bao gåm c¸c hµm ph©n tÝch vµ xö lý tÝn hiÖu. - Communication VIs: Cung cÊp c¸c hµm dïng ®Ó kÕt nèi vµ trao ®æi d÷ liÖu gi÷a c¸c øng dông trªn nÒn WINDOWS. - Control & Simulation Toolkit: Dïng cho c¸c bµi to¸n m« pháng vµ ®iÒu khiÓn. Kh¸c víi ng«n ng÷ lËp tr×nh th«ng th−êng (ng«n ng÷ dßng lÖnh) LabVIEW sö dông ng«n ng÷ lËp tr×nh G – ng«n ng÷ lËp tr×nh ®å h×nh - ®Ó t¹o c¸c ch−¬ng tr×nh ë d¹ng s¬ ®å khèi. Do ®ã ng−êi lËp tr×nh cã thÓ thiÕt kÕ mét giao diÖn m« pháng theo panel cña c¸c thiÕt bÞ vËt lý thùc. Nã cßn t¹o ra mét c¸i nh×n trùc quan trong viÖc x©y dùng m· nguån, gióp ng−êi lËp tr×nh trong thiÕt kÕ hÖ thèng, gì rèi vµ kiÓm tra ch−¬ng tr×nh. 1.2. Kü thuËt lËp tr×nh c¬ b¶n trªn LabVIEW 1.2.1. CÊu tróc ch−¬ng tr×nh 3 C¸c ch−¬ng tr×nh x©y dùng trªn LabVIEW (VIs) t−¬ng tù nh− c¸c function cña mét ng«n ng÷ lËp tr×nh dßng lÖnh. Mét VI gåm cã ba phÇn: Giao diÖn víi ng−êi sö dông – Front Panel, l−u ®å cung cÊp m· nguån – Block Diagram, vµ biÓu t−îng kÕt nèi – Icon/Conector. - Front Panel: Lµ n¬i giao tiÕp gi÷a ng−êi dïng vµ ch−¬ng tr×nh. Nã t−¬ng tù nh− mét panel cña c¸c thiÕt bÞ vËt lý, bao gåm c¸c nót bËt, c«ng t¾c chuyÓn m¹ch, bé hiÓn thÞ,..Víi Front Panel b¹n cã thÓ nhËp sè liÖu tõ bµn phÝm (hoÆc chuét) vµ xem kÕt qu¶ tõ mµn h×nh. H×nh 1.1 minh ho¹ mét Front Panel cña ch−¬ng tr×nh. H×nh 1.1: Front Panel cña ch−¬ng tr×nh - Block Diagram: VI nhËn lÖnh tõ block diagram. §©y lµ mét ph−¬ng thøc ®−îc sö dông trong G – ng«n ng÷ ®å h×nh. Block diagram th−êng cã c¸c ®èi t−îng, c¸c hµm vµ SubVI, ®−îc kÕt nèi víi nhau theo mét quy t¾c nhÊt ®Þnh ®Ó cung cÊp m· nguån ®å h×nh cho VI thùc hiÖn. Block diagram gåm cã c¸c terminal, node vµ wire. Terminal lµ cæng truyÒn d÷ liÖu gi÷a block diagram víi front panel hoÆc gi÷a c¸c node trong cïng mét block diagram. §Ó hiÓn thÞ c¸c terminal cña hµm hoÆc VI, kÝch chuét ph¶i vµo icon cña chóng råi chän menu: Show>>Terminal. Node lµ c¸c phÇn tö thùc hiÖn 4 ch−¬ng tr×nh. Chóng t−¬ng tù nh− c¸c mÖnh ®Ò, to¸n tö, hµm hoÆc ch−¬ng tr×nh con ë trong c¸c ng«n ng÷ lËp tr×nh dßng lÖnh. Wire gièng nh− c¸c bus truyÒn d÷ liÖu gi÷a c¸c node. H×nh 1.2 minh ho¹ mét Block Diagram cña ch−¬ng tr×nh. H×nh 1.2: Block Diagram cña ch−¬ng tr×nh - Icon vµ Connector: VI cã thÓ thùc hiÖn mét c¸ch ®éc lËp hoÆc ®−îc mét VI kh¸c gäi tíi nh− mét ch−¬ng tr×nh con (SubVI). §Ó lµm ®iÒu nµy LabVIEW ®−a ra kh¸i niÖm icon vµ connector. Icon lµ biÓu t−îng cña mét VI, ®−îc dïng khi sö dông VI nµy nh− mét SubVI trong mét VI kh¸c. Mét VI gäi tíi mét VI kh¸c b»ng c¸ch ®−a icon cña nã vµo block diagram. Connector lµ mét phÇn tö cña terminal dïng ®Ó kÕt nèi c¸c ®Çu vµo hoÆc ®Çu ra cña mét SubVI víi c¸c node kh¸c trong block diagram cña VI gäi nã. Mçi VI cã mét icon mÆc ®Þnh hiÓn thÞ trong b¶ng Icon ë gãc trªn bªn ph¶i cña cöa sæ Front Panel hoÆc Block Diagram (h×nh 1.3). H×nh 1.3: Icon cña ch−¬ng tr×nh 5 §Ó hiÓn thÞ connector cña mét VI trªn front panel, kÝch chuét ph¶i vµo icon vµ chän menu: Show>>Connector. 1.2.2. C¸c c«ng cô hç trî lËp tr×nh - Tools palette: Bao gåm c¸c chÕ ®é lµm viÖc cña chuét. C¸c c«ng cô cã trong tools palette ®−îc sö dông ®Ó so¹n th¶o hoÆc ch¹y ch−¬g tr×nh. §Ó truy cËp vµo Tools palette chän menu: Window>>Show Tools palette. Khi nµy xuÊt hiÖn mét b¶ng c«ng cô nh− minh ho¹ ë h×nh 1.4. H×nh 1.4: Tools palette H×nh 1.5: Controls Palette - Controls palette: Lµ b¶ng chøa c¸c bé ®iÒu khiÓn vµ chØ thÞ ®−îc sö dông trªn front panel cña c¸c VI. Controls lµ c¸c terminal ®Çu vµo, dïng ®Ó cung cÊp d÷ liÖu cho VI cßn Indicators lµ c¸c terminal ®Çu ra dïng ®Ó hiÓn thÞ d÷ liÖu do VI t¹o ®−îc. §Ó truy cËp vµo controls panel ta chän menu: Window>>Show Controls palette. Khi nµy xuÊt hiÖn b¶ng controls nh− minh ho¹ ë h×nh 1.5. Cã thÓ tham kh¶o [10] hoÆc xem help cña phÇn mÒm ®Ó cã th«ng tin chi tiÕt h¬n vÒ c¸c ®iÒu khiÓn trong controls palette. 6 - Functions palette: Functions lµ c¸c node c¬ b¶n trong ng«n ng÷ lËp tr×nh G, nã t−¬ng tù c¸c to¸n tö hoÆc c¸c hµm trong ng«n ng÷ th«ng th−êng. Functions cã biÓu t−îng mµu vµng, kh«ng cã front panel vµ block diagram (do chóng kh«ng ph¶i lµ c¸c VIs). Cã thÓ truy nhËp c¸c functions tõ Window>>Functions palette. H×nh 1.6 minh ho¹ mét Functions Palette. H×nh 1.6: Functions Palette Functions ®−îc sö dông ®Ó x©y dùng block diagram. LabVIEW cã th− viÖn hµm rÊt m¹nh vµ phong phó ®Ó xö lý kÕt qu¶ còng nh− ®iÒu khiÓn vµ m« pháng thiÕt bÞ nh−: c¸c hµm xö lý to¸n häc - Numeric Functions, c¸c hµm biÕn ®æi logic - Boolean Functions, c¸c hµm xö lý m¶ng vµ ma trËn - Array Functions. Cïng víi sù ph¸t triÓn cña khoa häc kü thuËt mµ c¸c th− viÖn hµm trªn LabVIEW lu«n ®−îc 7 ph¸t triÓn vµ chuyªn dông ho¸ ®Ó ng−êi dïng cã thÓ cËp nhËt vµ sö dông hiÖu qu¶ cho môc ®Ých c«ng viÖc cña m×nh. 1.2.3. C¸c b−íc x©y dùng ch−¬ng tr×nh trªn LabVIEW Sau khi ®· t×m hiÓu ®Æc ®iÓm cña ng«n ng÷, c«ng cô hç trî vµ ®iÒu khiÓn ch−¬ng tr×nh ta sÏ b¾t tay vµo x©y dùng mét VI. §Ó x©y dùng mét ch−¬ng tr×nh trªn LabVIEW cÇn tu©n thñ theo c¸c b−íc sau: - ThiÕt kÕ giao diÖn trªn Fronl panel: T¹o mét VI míi b»ng c¸ch chän New VI tõ hép héi tho¹i hoÆc tõ menu: File>>New. §Æt c¸c Control vµ Indicator cÇn thiÕt lªn Front Panel b»ng c«ng cô positioning tool. Pop-up lªn tõng ®èi t−îng ®Ó lùa chän c¸ch hiÓn thÞ vµ thay ®æi thuéc tÝnh cña chóng. - X©y dùng m· nguån trªn Block Diagram: Chän Windows>> Show Block Diagram (phÝm t¾t lµ Ctrl+E) ®Ó hiÖn Block Diagram cña VI. Thao t¸c t−¬ng tù b−íc 1 ®Ó x©y dùng c¸c cÊu tróc vµ hµm cÇn thiÕt cho ch−¬ng tr×nh. Chän c«ng cô Wiring tool ®Ó liªn kÕt c¸c ®èi t−îng trong Block Diagram. Trë l¹i front panel chän c«ng cô Operating tool ®Ó nhËp gi¸ trÞ ®Çu vµo vµ kÝch ho¹t cho VI ho¹t ®éng ®Ó kiÓm tra lçi vµ ®¸nh gi¸ thuËt to¸n. - Sao l−u ch−¬ng tr×nh: Ghi ch−¬ng tr×nh lªn ®Üa víi tªn më réng lµ *.VI b»ng c¸ch chän New >>Save (Ctrl+S) hoÆc New>>Save As. 1.2.4. Kh¸i niÖm vµ c¸ch x©y dùng mét SubVI Trong lËp tr×nh ta th−êng gÆp hai vÊn ®Ò: - Cã mét sè ®o¹n m· ®−îc lÆp l¹i mµ viÖc viÕt chóng khiÕn ch−¬ng tr×nh trë nªn cång kÒnh nªn cÇn ph¶i tËp hîp vµo mét modul ®Ó khi ch−¬ng tr×nh cã yªu cÇu th× chØ cÇn gäi modul nµy. - Víi mét ch−¬ng tr×nh lín cÇn ph¶i chia thµnh c¸c modul nhá cho nhiÒu ng−êi cïng x©y dùng (kiÓu top-down) mµ c¸c modul nµy cã 8 thÓ ho¹t ®éng ®éc lËp song còng cã thÓ kÕt hîp l¹i trong mét modul møc ®Ønh ®Ó thùc hiÖn c¸c yªu cÇu ®Æt ra. §Ó gi¶i quyÕt vÊn ®Ò nµy, LabVIEW ®−a ra kh¸i niÖm SubVI. SubVI lµ mét VI ®−îc bæ sung thªm biÓu t−îng (icon) vµ ®Çu nèi (connector) ®Ó cã thÓ sö dông trong VI kh¸c. ViÖc sö dông SubVI gióp ch−¬ng tr×nh dÔ hiÓu, dÔ gì rèi vµ cã thÓ ph©n chia mét nhiÖm vô phøc t¹p thµnh nhiÒu modul ®Ó nhiÒu ng−êi cïng tham gia hoµn thµnh. Trong LabVIEW cã hai c¸ch c¬ b¶n ®Ó x©y dùng mét SubVI: X©y dùng tõ mét VI vµ x©y dùng tõ mét phÇn cña VI. §Ó x©y dùng SubVI tõ mét VI ta lµm theo c¸c b−íc sau: - ThiÕt kÕ front panel vµ x©y dùng m· nguån trªn block diagram: B−íc nµy t−¬ng tù nh− c¸c b−íc t¹o mét VI mµ ta ®· tr×nh bµy ë trªn. - T¹o biÓu t−îng cho SubVI: §Ó t¹o biÓu t−îng cña VI cÇn cho hiÖn cöa sæ Icon Editor. Cã thÓ gäi cöa sæ nµy b»ng c¸ch kÝch ®óp chuét vµo « biÓu t−îng ë gãc bªn ph¶i hoÆc kÝch chuét ph¶i vµ chän môc Edit Icon. Khi ®ã cöa sæ sÏ hiÖn lªn nh− minh ho¹ d−íi h×nh 1.12. Sö dông c¸c c«ng cô ë bªn tr¸i cöa sæ ®Ó thiÕt kÕ biÓu t−îng theo ý muèn. H×nh 1.12: Icon Editor 9 - X¸c ®Þnh c¸c mÉu connector terminal: §Ó cã thÓ nhËn hay truyÒn d÷ liÖu b¹n cÇn ph¶i cã c¸c connector. LabVIEW cã rÊt nhiÒu mÉu conector mµ ta cã thÓ chän b»ng c¸ch pop-up trªn icon vµ chän Pattern. Khi nµy mét b¶ng mÉu cña connector sÏ xuÊt hiÖn nh− h×nh 1.13. H×nh 1.13: Pattern Icon Ta cã thÓ thªm mét terminal vµo mÉu (Add Terminal), bá mét terminal (Remove Terminal) hoÆc thay ®æi kh«ng gian s¾p xÕp (Flip Horizontal, Flip Vertical, Rotage 90 degrees). H×nh 1.14: G¸n Terminal cho Controls 10 - G¸n Terminal cho Control vµ Indicator: BÊm chuét vµo mét Terminal, nã chuyÓn thµnh mµu ®en vµ chuét chuyÓn thµnh Wiring tool. BÊm chuét vµo control (hoÆc Indicator) muèn g¸n cho Terminal ®· chän, mét khung nhÊp nh¸y sÏ bao lÊy ®èi t−îng. KÝch chuét lªn vïng trèng bÊt kú ®Ó hoµn thµnh viÖc g¸n. LÆp l¹i cho c¸c Control vµ Indicator kh¸c. H×nh 1.14 minh ho¹ viÖc g¸n Terminal cho Control vµ Indicator. §Ó x©y dùng SubVI tõ VI ta chän phÇn cÇn x©y dùng b»ng c«ng cô Positioning tool sau ®ã chän menu: Edit>>Creat SubVI. Khi nµy c¸c control vµ indicator ®−îc tù ®éng t¹o cho SubVI míi, SubVI ®−îc tù ®éng nèi víi c¸c d©y nèi ®ang cã vµ mét biÓu t−îng thay thÕ cho phÇn ®−îc chän cña Block Diagram cña VI gèc. T¹o mét SubVI tõ mét phÇn cña VI gièng nh− viÖc bá mét phÇn cña SubVI vµ thay thÕ b»ng mét SubVI ngo¹i trõ c¸c ®iÓm sau: - Kh«ng mét terminal nµo cña Front Panel trong phÇn ®−îc chän bÞ lo¹i bá. Chóng ®−îc gi÷ l¹i vµ ®−îc nèi víi SubVI võa t¹o. - TÊt c¶ c¸c thuéc tÝnh trong phÇn chän ®−îc gi÷ l¹i trong VI vµ ®−îc nèi víi SubVI. Nh÷ng thuéc tÝnh nµy ®−îc thay thÕ bëi c¸c terminal cña Front Panel trong SubVI vµ ho¹t ®éng nh− c¸c kªnh truyÒn gi¸ trÞ cña mét thuéc tÝnh vµo hoÆc ra khái SubVI. - Khi phÇn ®−îc chän chøa mét biÕn côc bé, nã ®−îc thay thÕ bëi terminal cña Front Panel trong SubVI vµ ®−îc gi÷ l¹i trong VI gäi ®Ó nèi víi SubVI. Khi cã nhiÒu biÕn côc bé th× chØ cã biÕn ®Çu trë thµnh terminal cña Front Panel cßn c¸c biÕn cßn l¹i ®−îc chuyÓn vµo SubVI. Chó ý: BiÓu t−îng ®Æt lªn SubVI khi t¹o chóng tõ mét phÇn cña VI lµ mét biÓu t−îng mÆc ®Þnh. Do vËy cÇn ph¶i so¹n l¹i biÓu t−îng theo c¸ch ®· tr×nh bµy ë trªn. 11 1.2.5. Gì rèi ch−¬ng tr×nh Mét VI kh«ng thÓ biªn dÞch hoÆc ch¹y nÕu nã bÞ lçi. NÕu VI bÞ lçi, nót VI Run cã biÓu t−îng lµ mòi tªn g·y (Brocken Run). §iÒu nµy cã thÓ do trong Block Diagram cã c¸c Wire sai quy c¸ch. §Ó lo¹i bá chóng chän Edit >> Remove Bad Wires. NÕu thao t¸c trªn vÉn kh«ng ®−îc ta cã thÓ t×m nguyªn nh©n g©y lçi b»ng c¸ch kÝch vµo nót Brocken Run. Khi ®ã xuÊt hiÖn hép th«ng tin Error List liÖt kª d¹nh s¸ch c¸c lçi. §Ó truy cËp vµo hép nµy chän Windows >> Show Error List hoÆc kÝch vµo nót Warning (chØ xuÊt hiÖn khi VI cã lçi). §Ó t×m vÞ trÝ lçi kÝch ®óp chuét vµo dßng v¨n b¶n m« t¶ lçi, néi dung cña lçi sÏ xuÊt hiÖn trong cña sæ phÝa tr−íc lµm râ ®èi t−îng g©y ra lçi trªn Block Diagram. H×nh 1.15 minh ho¹ mét hép th«ng tin Error List: H×nh 1.15: Cöa sæ Error List Trong tr−êng hîp ch−¬ng tr×nh thùc hiÖn nh−ng kh«ng t¹o ra kÕt qu¶ nh− mong muèn (lçi thuËt to¸n), ta cã thÓ debug theo c¸c b−íc sau: 12 - Lo¹i bá tÊt c¶ c¸c lêi b¸o hiÖu. Chän Show Warning trong cöa sæ Error List, hép liÖt kª danh s¸ch sÏ nhËn ra c¸c lêi b¸o hiÖu ®èi víi VI. X¸c ®Þnh nguyªn nh©n vµ lo¹i bá chóng. - KiÓm tra d©y nèi. - §¶m b¶o c¸c node vµ function ®· ®−îc dïng ®óng. - Sö dông Breakpoints thùc hiÖn tõng b−íc ®Ó x¸c ®Þnh xem VI ho¹t ®éng cã ®óng tr×nh tù kh«ng. - Sö dông ®Æc tÝnh th¨m dß Probe ®Ó quan s¸t c¸c gi¸ trÞ d÷ liÖu trung gian. KiÓm tra lçi ®Çu ra cña c¸c function vµ VI thùc hiÖn vµo ra. - KiÓm tra sù trµn cña c¸c Control vµ Indicators. - KiÓm tra thø tù c¸c phÇn tö cña Cluster t¹i ®iÓm nguån vµ ®Ých. D−íi ®©y xin tr×nh bµy chi tiÕt h¬n mét sè ph−¬ng ph¸p gì rèi cho ch−¬ng tr×nh hay ®−îc dïng trong LabVIEW. Sö dông ®Æc tÝnh th¨m dß – Probe: Ph−¬ng ph¸p nµy th−êng ®−îc sö dông ®Ó quan s¸t c¸c gi¸ trÞ d÷ liÖu trung gian trong cÊu tróc lÆp. Trong Tools palette chän Probe tool. Trªn Block Diagram chän ®èi t−îng cÇn debug, kÝch chuét tr¸i lªn ®èi t−îng ®Ó t¹o mét ®iÓm dß. Lµm t−¬ng tù cho c¸c ®èi t−îng cÇn debug kh¸c. Trë l¹i Front Panel ch¹y ch−¬ng tr×nh ®Ó quan s¸t gi¸ trÞ tr¶ vÒ trong cöa sæ Probe. Ch¹y ch−¬ng tr×nh theo chÕ ®é Execution Highlighting: §Ó kiÓm tra kÕt qu¶, c¸ch tèt nhÊt lµ theo dâi sù ho¹t ®éng cña Block Diagram d−íi d¹ng ho¹t ho¹ (animation) – trong ®ã gi¸ trÞ cña c¸c phÇn tö ®−îc hiÓn thÞ vµ di chuyÓn chËm trong luång d÷ liÖu (data flow) ®Ó ng−êi lËp tr×nh theo dâi vµ kiÓm tra tÝnh ®óng ®¾n cña nã. KÝch vµo nót Highlighting Execution ®Ó ch¹y trong chÕ ®é nµy, kÝch l¹i mét lÇn n÷a ®Ó vÒ chÕ ®é b×nh th−êng. Sö dông chÕ ®é ho¹t ®éng Single-Step: Ch¹y ch−¬ng tr×nh theo tõng node vµ t¹m dõng ë node kÕ tiÕp cho ®Õn khi cã sù kÝch ho¹t cña ng−êi sö 13 dông. ChÕ ®é nµy th−êng ®−îc sö dông cïng víi chÕ ®é Highlighting ®Ó kiÓm tra tÝnh ®óng ®¾n cña ch−¬ng tr×nh. 1.2.6. VÝ dô minh ho¹ §Ó kÕt thóc phÇn tr×nh bµy vÒ lËp tr×nh c¬ b¶n trªn LabVIEW, em xin ®−a ra mét vÝ dô nhá vÒ sö dông ng«n ng÷ G ®Ó gi¶i bµi to¸n ®a thøc. Ch−¬ng tr×nh cã nhiÖm vô tÝnh gi¸ trÞ mét ®a thøc bËc hai cho mét m¶ng biÕn bÊt kú ®−îc nhËp tõ bµn phÝm. D−íi ®©y lµ c¸c b−íc cô thÓ ®Ó x©y dùng ch−¬ng tr×nh: B−íc 1: Më mét file míi b»ng c¸ch chän File >> New. ThiÕt kÕ giao diÖn cho ch−¬ng tr×nh bao gåm ba numeric control tham sè a, b vµ c, mét array numeric control ®èi sè x vµ mét array numeric indicator hµm sè y. Popup vµo tõng ®èi t−îng ®Ó chän thuéc tÝnh cña chóng. KÕt thóc b−íc 1 ta ®−îc mét front panel nh− h×nh 1.16. H×nh 1.16: Front Panel cña VÝ dô 1 B−íc 2: X©y dùng m· nguån cho Block diagram. ë ®©y ta sö dông Formula node ®Ó lËp mét ®a thøc bËc hai cã d¹ng: y=ax2+bx+c. Node nµy ®−îc ®−a vµo trong mét vßng lÆp For loop ®Ó xö lý víi m¶ng ®èi sè x ë ®Çu vµo, cho ra kÕt qu¶ lµ m¶ng hµm sè y ®Çu ra. Block diagram cña vÝ dô 1 ®−îc hoµn chØnh nh− h×nh 1.17. 14 H×nh 1.17: Block Diagram cña vÝ dô 1 B−íc 3: Sau khi ®· x©y dùng xong m· nguån ®å h×nh, ®¶m b¶o ch−¬ng tr×nh ch¹y ®óng, chóng ta kÕt thóc viÖc lËp tr×nh b»ng c¸ch l−u ch−¬ng tr×nh vµo ®Üa víi tªn Vidu1.vi b»ng menu: File >> Save hoÆc phÝm t¾t Ctrl+S. Cã thÓ x©y dùng Vidu1.vi thµnh mét SubVI cho c¸c ch−¬ng tr×nh kh¸c theo c¸c b−íc sau: H×nh 1.18: ThiÕt kÕ icon B−íc 1: T¹o Icon vµ Connector. Sö dông Edit icon ®Ó t¹o biÓu t−îng nh− h×nh 1.18. Nªn t¹o biÓu t−îng mét c¸ch trùc quan thÓ hiÖn ®−îc c¸c tÝnh 15 chÊt cña SubVI mµ ta x©y dùng. Sau ®ã pop-up vao icon chon menu: Show connector ®Ó chän mÉu connector phï hîp tõ b¶ng pattern. B−íc 2: G¸n tõng connector cho c¸c terminal t−¬ng øng (nh− h×nh 1.19). ChuyÓn icon vÒ d¹ng ban ®Çu b»ng c¸ch chän Show icon, ghi l¹i nh÷ng thay ®æi trong ch−¬ng tr×nh ta sÏ ®−îc mét SubVI hoµn chØnh. H×nh 1.19: ThiÕt kÕ connector Trªn ®©y lµ toµn bé c¸c b−íc ®Ó x©y dùng mét VI. Cã thÓ ph¸t triÓn VI nµy ®Ó t×m gi¸ trÞ cña mét ®a thøc bËc N víi chØ sè bËc nhËp vµo tõ bµn phÝm. 1.3. LËp tr×nh n©ng cao hç trî t¹o thiÕt bÞ ¶o trªn LabVIEW 1.3.1. Trao ®æi th«ng tin vµ lËp tr×nh m¹ng b»ng LabVIEW LabVIEW hç trî kh¶ n¨ng kÕt nèi vµ chia sÎ tµi nguyªn gi÷a c¸c øng dông ch¹y trªn nÒn Windows trong m«i tr−êng m¹ng. §Ó trao ®æi d÷ liÖu gi÷a c¸c øng dông, LabVIEW sö dông c¸c giao thøc sau (ë ®©y ta chØ quan t©m ®Õn c¸c øng dông ch¹y trªn nÒn Windows): - TCP/IP: Cã s½n trong tÊt c¶ c¸c m¸y tÝnh. - DDE: Cã s½n trong c¸c m¸y PC ®Ó rao ®æi th«ng tin gi÷a c¸c øng dông cña Windows. - Active X: Cã s½n trong c¸c m¸y PC ch¹y trªn hÖ ®iÒu hµnh Win 9X. - Data Socket: §−îc hç trî trong phÇn mÒm LabVIEW phiªn b¶n 6.i. 16 TÊt c¶ c¸c øng dông m¹ng ®Òu cã chung mét m« h×nh, ®ã lµ m« h×nh client/server. Trong m« h×nh nµy mét tËp c¸c qu¸ tr×nh (client) yªu cÇu sù phôc vô tõ mét tËp c¸c qu¸ tr×nh kh¸c (server). Trong LabVIEW chóng ta cã thÓ sö dông m« h×nh nµy cho tÊt c¶ c¸cgiao thøc liÖt kª ë trªn. Cã thÓ kh¸i qu¸t mét qu¸ tr×nh kÕt nèi sö dông m« h×nh client/server nh− sau. §èi víi mét m¸y kh¸ch: §Çu tiªn client më mét kÕt nèi víi server. NÕu kÕt nèi thµnh c«ng, client sÏ göi tíi server mét tËp lÖnh yªu cÇu truyÒn d÷ liÖu hoÆc lÖnh ®iÒu khiÓn tõ xa vµ nhËn gi¸ trÞ göi tr¶ (response) cña server. Cuèi cïng client ®ãng kÕt nèi l¹i kÕt thóc mét qu¸ tr×nh trao ®æi th«ng tin. §èi víi mét m¸y chñ: §Çu tiªn LabVIEW khëi t¹o mét server. NÕu khëi t¹o thµnh c«ng nã sÏ ®i vµo mét vßng lÆp, t¹i ®ã nã ®îi c¸c client kÕt nèi vµ ph¸t yªu cÇu. Server thùc hiÖn c¸c yªu cÇu vµ lÆp l¹i qu¸ tr×nh nµy cho ®Õn khi bÞ dõng l¹i bëi ng−êi sö dông hoÆc khi tiÕp nhËn lÖnh kÕt thóc tõ xa (do mét client nµo ®ã yªu cÇu). H×nh 1.20: DataSocket Server Manager 17 Khi x©y dùng bµi to¸n m¹ng trong c¸c ng«n ng÷ lËp tr×nh kiÓu dßng lÖnh, ng−êi lËp tr×nh th−êng ph¶i tù x©y dùng vµ qu¶n lý c¸c tiÕn tr×nh trong m« h×nh client/server cña m×nh, ®iÒu nµy g©y ra mét khã kh¨n kh«ng nhá vµ chiÕm nhiÒu thêi gian trong viÖc lËp tr×nh. B¾t ®Çu tõ phiªn b¶n 6.0 trë ®i, LabVIEW hç trî viÖc trao ®æi d÷ liÖu th«ng qua Data Socket b»ng c¸ch cung cÊp mét th− viÖn hµm vµ mét tiÖn Ých qu¶n lý viÖc trao ®æi d÷ liÖu b»ng Data Socket – Data Socket Server Manager (minh ho¹ ë h×nh 1.20), ®iÒu nµy gióp ng−êi lËp tr×nh gi¶m ®−îc ®¸ng kÓ thêi gian cµi ®Æt mét hÖ qu¶n trÞ m¹ng vµ khiÕn cho hiÖu qu¶ lËp tr×nh t¨ng lªn rÊt nhiÒu. Data Socket lµ mét ph−¬ng thøc trao ®æi d÷ liÖu cña Windows cho phÐp c¸c øng dông trao ®æi d÷ liÖu cho nhau th«ng qua m¹ng. Nã cho phÐp c¸c øng dông trao ®æi d÷ liÖu víi nhau theo c¸c gãi th«ng tin (giao thøc TCP/IP) hoÆc d−íi d¹ng c¸c file d÷ liÖu (giao thøc truyÒn file - FPT). Khi nµy Data Socket Server t¹o ra c¸c Data Items cho phÐp mét øng dông göi d÷ liÖu tíi hoÆc nhËn d÷ liÖu vÒ. §Ó göi d÷ liÖu tíi mét Data Items cã thÓ sö dông hµm DataSocket Write, cßn ®Ó nhËn d÷ liÖu tõ mét Data Items cã thÓ sö dông hµm DataSocket Read. H×nh 1.21 vµ 1.22 minh ho¹ hai hµm nµy trong LabVIEW. H×nh 1.21: DataSocket Read H×nh 1.22: DataSocket Write 18 C¸c terminal cÇn thiÕt cho hai hµm nµy: tªn m¸y tÝnh trªn m¹ng, tªn cña Data Items, kiÓu d÷ liÖu vµ d÷ liÖu. §Ó sö dông ph−¬ng thøc nµy, cã thÓ gäi c¸c hµm tõ th− viÖn Communication >> DataSocket. Tham kh¶o Help ®Ó cã thªm th«ng tin chi tiÕt vÒ c¸c hµm. 1.3.2. ThiÕt kÕ custom controls Nh− ®· tr×nh bµy ë c¸c môc tr−íc, Controls lµ c¸c terminals cho phÐp ng−êi sö dông nhËp d÷ liÖu vµo ch−¬ng tr×nh vµ quan s¸t c¸c kÕt qu¶ nhËn ®−îc tõ ch−¬ng tr×nh. Víi môc ®Ých hç trî cho c¸c bµi to¸n kÕt nèi vµ ®iÒu khiÓn, c¸c controls trong LabVIEW ®−îc x©y dùng nh− c¸c nóm nót, bé hiÓn thÞ trong thiÕt bÞ vËt lý thùc. H×nh 1.23 minh ho¹ mét sè Controls trong LabVIEW . H×nh 1.23: Mét sè Controls c¬ b¶n trªn LabVIEW MÆc dï c¸c controls ®−îc x©y dùng bëi LabVIEW kh¸ phong phó vµ ®a d¹ng vÒ kiÓu lo¹i song vÉn kh«ng thÓ theo kÞp sù ph¸t triÓn liªn tôc cña c¸c thiÕt bÞ kü thuËt. §Ó gi¶i quyÕt ®iÒu nµy, LabVIEW cho phÐp ng−êi lËp tr×nh sö dông Custom Controls. Custom Controls lµ c¸c ®iÒu khiÓn tuú biÕn do ng−êi lËp tr×nh tù thiÕt kÕ. Tõ nh÷ng Controls c¬ b¶n, ng−êi lËp tr×nh cã thÓ thay ®æi c¸c thuéc tÝnh, kiÓu hiÓn thÞ,.. ®Ó t¹o nh÷ng Controls cña riªng m×nh. §iÒu nµy t¹o ra mét hiÖu qu¶ cao vµ ®Æc biÖt cã ý nghÜa trong bµi to¸n m« pháng nh÷ng thiÕt bÞ vËt lý cô thÓ. H×nh 1.24 vµ 1.25 minh ho¹ mét Default Controls vµ Custom Controls trong bµi to¸n m« pháng thiÕt bÞ. 19 H×nh 1.24: M« pháng thiÕt bÞ ®o hiÓn thÞ sè víi c¸c Default Controls H×nh 1.25: M« pháng thiÕt bÞ ®o hiÓn thÞ sè víi Custom Controls Trong vÝ dô minh ho¹ nµy, em thiÕt kÕ mét m¸y ®o víi phÇn hiÓn thÞ lµ c¸c ®Ìn LED 7 ®o¹n. Râ rµng lµ víi ch−¬ng tr×nh m« pháng sö dông c¸c Custom Controls t¹o ra ®−îc mét giao diÖn rÊt trùc quan vµ Ên t−îng m¹nh cho ng−êi thao t¸c. §Ó t¹o mét Custom Controls, ta cã thÓ x©y dùng chóng theo c¸c b−íc sau ®©y: - B−íc 1: Tõ menu bar chän File >> New >> Control. Khi nµy xuÊt hiÖn mét cöa sæ x©y dùng Custom Controls nh− h×nh 1.26. H×nh 1.26: T¹o mét New Custom Control 20
- Xem thêm -

Tài liệu liên quan