Upload
others
View
7
Download
0
Embed Size (px)
Citation preview
รายงานวจย
พฒนาระบบควบคมมอเตอรเพองานเกษตรผานพอรตขนานดวยโปรแกรมวชวลเบสก
(Development of Motor Controlling System for Agriculture
Using Parallel Port with Visual Basic Program)
เรวต พลสข
สาขาวชาเทคโนโลยเครองจกรกลเกษตร
คณะเทคโนโลยการเกษตรและอตสาหกรรมเกษตร
มหาวทยาลยเทคโนโลยราชมงคลสวรรณภม
2555
สวพ.
มทร.สวรรณภ
ม
-ข-
กตตกรรมประกาศ
การดาเนนงานวจยครงนสาเรจลลวงได ดวยความกรณาจากบคคลหลายกลม ทให
คาแนะนา คาปรกษา และชวยเหลอ ดานตางๆทเกยวของ ผวจยกราบขอขอบพระคณไว ณ โอกาสน
ขอกราบขอบคณ ผจดการ บรษทไอซหาหาหาคอมพวเตอร จากด ทใหคาแนะนาการ
เลอกใชอปกรณ การเขยนโปรแกรม จนสาเรจลลวง
ขอกราบขอบคณอาจารยในสาขาวชาเทคโนโลยเครองจกรกลเกษตรทกทานทใหความ
สะดวกในการใชเครองมอทจาเปนตอการดาเนนงานวจย
ขอขอบคณเจาหนาทหองสมดมหาวทยาลยเทคโนโลยราชมงคลสวรรณภม ศนยหนตรา ท
เออเฟอสถานทในการศกษาคนควาขอมลและเอกสารตางๆ เปนอยางด
เรวต พลสข
สวพ.
มทร.สวรรณภ
ม
-ก-
พฒนาระบบควบคมมอเตอรเพองานเกษตรผานพอรตขนานดวยโปรแกรมวชวลเบสก
(Development of Motor Controlling System for Agriculture
Using Parallel Port with Visual Basic Program)
ผวจย เรวต พลสข
บทคดยอ
การวจยพฒนาระบบควบคมมอเตอรเพองานเกษตรผานพอรตขนานดวยโปรแกรมวชวล
เบสก การพฒนาระบบควบคมมอเตอร ใชโปรแกรมวชวลเบสก 6 ทางานภายใต ระบบปฏบตการ
Windows xp มไฟล IO.DLL และ Inpout32.dll เปนไลบรารทใชเขยนโปรแกรมตดตอกบพอรต
ขนาน เพอสงคาสงไปควบคมการทางานของอปกรณทางาน กาหนดใชผานพอรตขนาน LPT1
Address 378H Data Port Bit D0 มอปกรณฮารดแวร ทาหนาทรบสญญาณและปองกน
คอมพวเตอรเสยหายเนองจากการทางานผดพลาด อปกรณฮารดแวรสวนนจะเลอกใชอปกรณทม
จาหนายภายในประเทศ โดยพจารณาจากคณสมบตทเกยวของ จดซอสะดวก สามารถปรบเปลยน
และทดแทนไดงาย อปกรณฮารดแวรประกอบดวย บอรดรบสญญาณจากพอรตขนาน
บอรดเอาตพตกระแสตา ใชแบบรเลย (Relay Driver) ขนาด 1 36แอมแปร36 บอรดเอาตพตกระแสสง
ใชคอนแทคเตอร ขนาด 220โวลต 30 36แอมแปร36 บอรดภาคจายแรงดนตา ใชแรงดนขนาด DC 12
โวลต และ อปกรณทางาน ใชมอเตอร ขนาด ½ แรงมา 220 โวลต เปนตนกาลงของเครองสขาว
ขนาดเลก นาอปกรณทงหมดมาประกอบ แลวดาเนนการทดลองประสทธภาพของอปกรณ โดยใช
ดจตอลมลตมเตอรเปนเครองมอ โดยวดตรวจสอบแรงดนท Bit D0 จากนนสงเกต การทางานของ
โปรแกรม ขณะทโปรแกรมทางานและหยดทางาน บนทกผลการทดลองและทาซาจานวน 100 ครง ผลการวจยพบวา โปรแกรมระบบควบคมการทางานมอเตอรเพองานเกษตรผานพอรต
ขนานดวยโปรแกรมวชวลเบสก สามารถทางานไดถกตอง คดเปนรอยละรอย อปกรณฮารดแวร
ระบบควบคมมอเตอรเพองานเกษตรผานพอรตขนานดวยโปรแกรมวชวลเบสก สามารถทางานได
ถกตอง และปลอดภย คดเปนรอยละรอย และ อปกรณฮารดแวรทผลตในเมองไทยสามารถใชงาน
ไดจรง
สวพ.
มทร.สวรรณภ
ม
-ก-
ABSTRACT
This research is aimed to develop a motor controlling system for agriculture by using the
parallel port based on a Visual Basic program. Under the development of motor controlling
system, it used a Visual Basic program 6.0 which worked through Window Xp operation with IO.
DLL file and input 32.dll. To order the motor to work, this program was as a library which was
linked to the parallel port which was LPT 1 Data Port Addras 378 H Bit name D0. Between the
parallel port and the motor, there was a hardware device which worked as a signal receiver and a
protector which protected a computer from various fault conditions. Hardware devices used in
this research were manufactured in Thailand because it was easy to buy, to replace and to modify.
These hardware devices were consisted of a signal receiver board from the parallel port, an 1 amp
output low current relay board, a 250 v 30 amp high current contactors board and a low voltage
DC 12 volt power supply board. A motor,1/2 HP 220 v, was used as a power drive of a small
thresher. After installing all devices, the efficiency of the operation of devices was tested by
using a digital multimeter to measure the voltage at the Bit name D0. After that the behavior of
the application when running and stopped was observed and reported. This observation was
replicated for 100 times.
The result of this research was found that the motor control system for agriculture
through the parallel port using the Visual Basic program was able to function accurately and
safely throughout 100 replications. The hardware devices manufactured in Thailand were able to
work effectively and safely.
สวพ.
มทร.สวรรณภ
ม
-ค-
สารบญ
หนา
บทคดยอ ก
กตตกรรมประกาศ ข
สารบญตาราง ง
สารบญรป จ
บทท1 บทนา 1
ความสาคญของปญหา 1
วตถประสงค 2
สมมตฐาน 2
ขอบเขต 2
วธการดาเนนงาน 3
เครองมอทใช 3
การสรางเครองมอ 3
การเกบขอมล 5
การวเคราะห 5
สถตทใชในการวเคราะห 5
ประโยชนทไดรบ 5
นยามศพทเฉพาะ 6
บทท2 เอกสารและงานทเกยวของ 7
ความรเบองตนเกยวกบพอรตขนาน 7
ขอดของพอรตขนาน 9
ลกษณะทางกายภาพของพอรตขนาน 9
การทางานของพอรตขนาน 15
การขบอปกรณเอาตพตกระแสสง 17
การเขยนโปรแกรมตดตอกบพอรตขนาน 23
ระบบเลขจานวน 25
การเขยนโปรแกรมตดตอกบพอรตขนานดวย Visual Basic 31
การเขยนโปรแกรมดวย Visual Basic 34
สวพ.
มทร.สวรรณภ
ม
-ค-
สารบญ (ตอ)
หนา
การใชโปรแกรม Visual Basic 38
การกาหนดคณสมบตใหกบคอนโทรล 44
การตรวจสอบการทางานของโปรแกรม 45
การสราง .EXE 45
การบนทกขอมล 47
การตรวจสอบและการจดการขอผดพลาดโปรแกรม 49
โอเปอเรเตอร (Operator) 51
การประกาศตวแปร 52
ชนดของตวแปร 52
ชนดของขอมล 53
การประกาศคาคงท (Constant) 56
งานวจยทเกยวของ 59
บทท3 วธการวจย 60
วธดาเนนการ 60
เครองมอทใช 60
การสรางเครองมอ 60
การเกบรวบรวมขอมล 62
การวเคราะหขอมล 62
สถตทใชในการวเคราะหขอมล 62
บทท4 ผลการวเคราะหขอมล 63
ตอนท1 หาคาเฉลย (Mean)การทางานของโปรแกรม 63
ตอนท 2 หาคารอยละ (Percentage)การทางานของอปกรณฮารดแวร 68
ผลทดลอง 68
บทท 5 สรป อภปรายผล และขอเสนอแนะ 69
วตถประสงค 69
การดาเนนการทดลอง 69
การวเคราะหขอมล 69
สวพ.
มทร.สวรรณภ
ม
-ค-
สารบญ (ตอ)
หนา
อภปรายผล 70
ขอเสนอแนะ 70
บรรณานกรม 71
ภาคผนวก 72
ภาคผนวก ก ตารางบนทกผลการทดลอง 73
ภาคผนวก ข ชดคาสงทใชพฒนาโปรแกรม 75
ภาคผนวก ค วธตดตงโปรแกรมและขอควรระวง 85
ภาคผนวก ง วธใชโปรแกรม 87
ภาคผนวก จ อปกรณฮารดแวร 91
สวพ.
มทร.สวรรณภ
ม
-ง-
สารบญตาราง
ตารางท หนา
2.1 แสดงขอมลขาของพอรตดาตา 10
2.2 แสดงขอมลขาของพอรตสถานะ 12
2.3 แสดงขอมลขาของพอรตควบคม 13
2.4 ความหมายของสญญาณ 14
2.5 แสดงแอดเดรสของพอรตขนาน 23
2.6 แสดงคาเทยบเลขฐาน 28
2.7 แสดงรายละเอยดของคอนโทรล 41
2.8 แสดงชอคอนโทรล 48
2.9 แสดงชนดของขอมลเบองตน 53
2.10 การใชสญลกษณพเศษตอทายตวแปร 55
2.11 ความหมายของแตละสวนของการประกาศคาคงท 56
2.12 แสดงตวดาเนนการดานคณตศาสตร 57
2.13 แสดงตวดาเนนการทางดานตรรกะ 57
2.14 แสดงตวดาเนนการทางดานการเปรยบเทยบ 58
2.15 แสดงตวดาเนนการทางดานการเชอมขอความ 58
3.1 ตารางบนทกการทดลอง 63
สวพ.
มทร.สวรรณภ
ม
-จ-
สารบญรป
รปท หนา
2.1 แสดงพอรตขนาน 7
2.2 ขาของพอรตขนาน 9
2.3 แสดงระบบบสภายในของพอรตขนาน 10
2.4 แสดงวงจรภายในของพอรตดาตา 11
2.5 แสดงวงจรพอรตสถานะ 12
2.6 แสดงวงจรพอรตควบคม 13
2.7 แสดงระบบบสของคอมพวเตอรสาหรบการตดตอกบพอรตขนาน 14
2.8 แสดงวงจรตอใชงานโดยใชทรานซสเตอรแบบเดยว 17
2.9 แสดงวงจรตอใชงานโดยใชทรานซสเตอรแบบคาสเดค 18
2.10 แสดงวงจรตอใชงานโดยใชทรานซสเตอรแบบดารลงตน 18
2.11 แสดงตาแหนงขา ULN 2003 19
2.12 แสดงรป ULN 2802 ขาสญญาณ 19
2.13 แสดงการตอสญญาณใชงาน 19
2.14 แสดงรปรางออปโตคปเปอร 20
2.15 แสดงโครงสรางภายในออปโตคปเปอรแบบตางๆ 20
2.16 แสดงวงจรใชงานของออปโตคปเปอร 21
2.17 แสดงโครงสรางของรเลย 21
2.18 แสดงรปแบบรเลย 22
2.19 การตอวงจรโดยใชไอซรวมกบรเลย 22
2.20 การตอวงจรโดยใชออปโตคปเปอรทรานซเตอรและรเลย โหลดเปนหลอดไฟฟา 22
2.21 การตอวงจรโดยใชออปโต ทรานซเตอรและรเลย โหลดเปนมอเตอรไฟฟา 22
2.22 แสดงภาพโปรแกรม Visual Basic 6.0 35
2.23 แสดงการใชคาสงไมถกตอง 35
2.24 แสดงDebugหาขอผดพลาด 36
2.25 แสดงเครองมอ (tool box) 36
2.26 เวบไซต msdn 37
2.27 แสดงการเปดโปรแกรม Visual Basic 38
สวพ.
มทร.สวรรณภ
ม
-จ-
สารบญรป(ตอ)
รปท หนา
2.28 แสดงหนาตางหลกของ โปรแกรม Visual Basic 6.0 39
2.29 แสดงชอคอนโทรลชนดตางๆ 40
2.30 แสดงการเพมคอนโทรล 42
2.31 แสดงแทบNew 42
2.32 แสดงแทบExisting 43
2.33 แสดงแทบ Recent 43
2.34 แสดงสวนประกอบหนาตาง Property Windows 44
2.35 หนาตางโคด 44
2.36 หนาตางโปรแกรมตรวจสอบ 45
2.37 หนาตางคาสง Make Projects Exe 45
2.38 หนาตางคาสง Make Projects Exe Save in 46
2.39 หนาตางคาสง Save 47
2.40 หนาตาง Debug 50
สวพ.
มทร.สวรรณภ
ม
1
บทท1
บทนา
ความสาคญของปญหา
ความเจรญกาวหนาทางดานเทคโนโลยดานคอมพวเตอร เขามามบทบาทสาคญใน
ชวตประจาวนของมนษย โดยเฉพาะดานการควบคมการทางาน ไดนามาใชในการควบคมการ
ทางานเครองจกรกล เพอ ทดแทนแรงงาน แทนงานทมความเสยง และเพมประสทธภาพในการ
ทางาน เปนตน เพราะสามารถกาหนดลกษณะการทางานไดตามตองการ โดยอาศยโปรแกรมและ
อปกรณอนเตอรเฟส ใหทางานตามขอกาหนด ระบบคอมพวเตอรสามารถทางานแบบซาๆได ม
ความเทยงตรงสง เมอเทยบกบการทางานดวยแรงงานของมนษย
จากปญหาดานการขาดแคลนแรงงาน และคณภาพผลผลตของภาคเกษตร แกปญหาหลาย
วธ เชน การเพมคาแรง การนาเขาแรงงานจากตางประเทศ การนาเขาเครองจกรกลเกษตร การ
ออกแบบเครองจกรกลเกษตร ทหลากหลายเพอใหเหมาะสมกบพชทปลก เปนตน การใช
เครองจกรกลเกษตรระบบอตโนมต มาทดแทนแรงงาน มความเหมาะสมหลายๆดาน แต
เครองจกรกลดงกลาวมราคาสง และกมปญหาหลายดาน เชน สภาพพนท ไมเหมาะสม พชท
เพาะปลก สภาพภมอากาศ ขอมลมนอย และ คาซอมบารงสง เปนตน
จากการตรวจขอมลและเอกสารทเกยวของพบวา
- นายประวทย เคยงผล รองอธบดกรมการจดหางาน กระทรวงแรงงาน เปดเผยผลการจด
ทะเบยนแรงงานตางดาวตงแตวนท 15 ม.ย. - 14 ก.ค.2554 ขอมล วนท 19 ก.ค.มนายจางยนขอจด
ทะเบยน 164,474 ราย จานวนแรงงานตางดาวทงสน 984,535 คน แยกเปนแรงงานพมา 643,095
คน กมพชา 238,586 คน ลาว 102,854 คนสวนมากเปนกลมอตสาหกรรมและเกษตรกรรมยนขอ
จดทะเบยน แสดงวาประเทศไทยมปญหาดานแรงงาน
- งานวจยของ ววธน ยงด (2550) เรองการสรางพลสสเหลยมแบบควบคมความกวางและ
ความสงผานทางพอรตขนาน พบวาสามารถควบคมแรงดนทผานพอรตขนานไดจาก 0 ถง 5โวลต
หมายความวาเราสามารถเขยนโปรแกรมควบคมแรงดนทผานพอรตขนานมาใชควบคมอปกรณ
ทางานตางๆได
-งานวจยของ ธงชย พนธเมธาฤทธ และคณะ (2551) การประยกตเซรามคแบบเอนทซสาหรบ
หววดและควบคมอณหภมเตาอบไฟฟาโดยใชระบบการวดทใชวชวลเบสกเปนฐาน. ในสวนท
เกยวของพบวา ไดสรางระบบควบคมอณหภมเตาอบไฟฟา โดยใชโปรแกรมวชวลเบสกเปน
ผลสาเรจ หมายความวาโปรแกรมวชวลเบสกสามารตดตอกบอปกรณในระดบฮารดแวรได
สวพ.
มทร.สวรรณภ
ม
2
ปจจบนโปรแกรมวชวลเบสก นยมใชพฒนาโปรแกรมแอพพลเคชน เชนโปรแกรมวนโดว
ระบบฐานขอมล เกมส เปนตน เนองจากโปรแกรมใชงาย มแหลงขอมลมากมายทใหการสนบสนน
ในสวนของคอมพวเตอรจะมพอรตขนานอยแลวไมตองตดตงเพม สามารถเขยนคาสงควบคมได
ทนท ดงงานวจยทกลาวมา
เมอกลาวถงเครองจกรกลงานเกษตร หรองานเกษตรระบบฟารม สวนมากใชมอเตอรไฟฟา
เปนตนกาลงหลก มขนาด ¼ - 10 แรงเปนตน ไดแก งานใหน าพช งานพนสารเคม งานแปร
สภาพพผลผลต เปนตน ดงนนผจดทาเหนถงความสาคญและไดเกดแนวความคดทจะพฒนา
ระบบควบคมมอเตอรเพองานเกษตรผานพอรตขนานดวยโปรแกรมวชวลเบสก เพออปกรณ
ดงกลาวทางานอตโนมต โดยอาศยเทคโนโลยของคอมพวเตอรและอปกรณฮารดแวรทงหมด
ผลตและพฒนาในประเทศไทย แทนการนาเขา เพอเกษตรกรไดใชเครองจกรกลเกษตรททนสมย
ในราคาทถก และคาดวาแกปญหาดานแรงงาน เพมคณภาพผลผลตเกษตร และประยกตใชกบ
ระบบควบคมอนๆทเกยวของ ตอไป
วตถประสงค
1. พฒนาโปรแกรม ระบบควบคมการทางานมอเตอรเพองานเกษตรผานพอรตขนานดวย
โปรแกรมวชวลเบสก ใหสามารถทางานไดถกตอง
2. ออกแบบการตดตงอปกรณฮารดแวรระบบควบคมมอเตอรเพองานเกษตรผานพอรต
ขนานดวยโปรแกรมวชวลเบสกใหสามารถทางานไดถกตอง
3. เลอกใชอปกรณฮารดแวรทผลตภายในประเทศ
สมมตฐาน
1. การพฒนาโปรแกรม ระบบควบคมการทางานมอเตอรเพองานเกษตรผานพอรตขนาน
ดวยโปรแกรมวชวลเบสก สามารถทางานไดถกตอง100 % และปลอดภย
2. ออกแบบการตดตงอปกรณฮารดแวรระบบควบคมมอเตอรเพองานเกษตรผานพอรต
ขนานดวยโปรแกรมวชวลเบสก สามารถทางานไดถกตอง100 % และปลอดภย
ขอบเขต
พฒนาระบบควบคมมอเตอรเพองานเกษตรผานพอรตขนานดวยโปรแกรมวชวลเบสก ให
สามารถควบคมการทางานมอเตอรเครองสขาวไดอยางมประสทธภาพมขอบเขตดงตอไปน
1. ดานการพฒนาโปรแกรมควบคมระบบ
สวพ.
มทร.สวรรณภ
ม
3
ใชโปรแกรม วชวลเบสก พฒนาระบบควบคมมอเตอรเพองานเกษตรผานพอรตขนาน
ใหทางานได สะดวกและมความปลอดภยตอการใชงาน
2. ดานอปกรณทางาน
2.1 เลอกใชอปกรณฮารดแวรทผลตและพฒนาในประเทศไทย ประกอบดวย
อปกรณอนเตอรเฟส อปกรณขยายสญญาณ มอเตอรไฟฟาสลบ 220 โวลล เปนตน
2.2 ตดตงอปกรณฮารดแวรตางๆ ใหสามารถทางานตามโปรแกรมได
2.3 ทดสอบแรงดนสญญาณควบคมการทางานของมอเตอรไฟฟาสลบ 220 โวลล
วธการดาเนน
พฒนาระบบควบคมมอเตอรเพองานเกษตรผานพอรตขนานดวยโปรแกรมวชวลเบสก
ไดดาเนนการวจยตามขนตอนดงน
1. เครองมอทใช
2. การสรางเครองมอ
3. การเกบรวบรวมขอมล
4. การวเคราะหขอมล
5. สถตทใชในการวเคราะหขอมล
เครองมอทใช
1. เครองไมโครคอมพวเตอร ตดตงระบบปฏบตการWindows xp
2. โปรแกรมควบคมระบบการทางานมอเตอร ทพฒนาจากโปรแกรม Visual Basic 6
3. อปกรณอนเตอรเฟส
4. อปกรณขบแรงดนตา
5. อปกรณขบแรงดนสง
6. อปกรณทางาน ไดแกมอเตอร 220 โวลต 1/2 แรงมา เปนตนกาลงเครองสขาว
การสรางเครองมอ
หลกการสรางเครองมอในการพฒนาระบบควบคมมอเตอรเพองานเกษตรผานพอรตขนาน
ดวยโปรแกรมวชวลเบสก ใชหลกการออกแบบของ ADDIE model โดยมขนตอนตอไปน
1.) ขนตอนวเคราะห (Analysis)
โดยจาแนกการวเคราะหดงตอไปน
สวพ.
มทร.สวรรณภ
ม
4
1.1 วเคราะห ในสวนโปรแกรม ทเกยวกบการทางานและความปลอดภย ความ
สะดวกตอการใชงาน คาสงทใชควบคมฮารดแวร จดประสงคการทางาน ตลอดจนเนอหา
ทเกยวของ เปนตน
1.2 วเคราะหในสวนอปกรณฮารดแวร ทรองรบการเชอมตอกบพอรตขนาน
ชองสญญาณทใชการสงขอมล การตดตงอปกรณทเกยวของ
1.3 วเคราะหปญหาทมโอกาสเกด ขณะพฒนาระบบและตดตงอปกรณฮารดแวร
2.) ขนตอนการออกแบบ (Design)
มขนตอนดงตอไปน
2.1 ออกแบบตวโปรแกรม ตวโปรแกรมม 3 สวนทสาคญ ดงน
2.1.1 สวนเรมตนโปรแกรม ออกแบบระบบความปลอดภย ปองกนการใช
โปรแกรมโดยไมไดรบอนญาต จะใชรหสผานเปนตวอกษรจานวน 4หลก หากเกดความผดพลาด
โปรแกรม จะแจงเตอน
2.1.2 สวนตวโปรแกรม สวนนจะเปนหนาตางใชงาน ประกอบดวย
- ระบบการตรวจสอบสถานะรจสเตอรของพอรตขนาน และกาหนดคา
กอนและหลงการใชโปรแกรม เพอปองกนไมใหอปกรณฮารดแวรทางานไดเอง
- เมน ไดแก ออกจากโปรแกรม วธใชงาน ตดตอผพฒนาระบบ เปนตน
- ปมควบคมการทางาน จะออกแบบปองกนการสงงานซาซอน
2.1.3 สวนแสดงผลการทางาน หลงจากกดปมควบคมการทางานแลว จะ
แสดงผลการทางานของโปรแกรมและอปกรณฮารดแวร ดวยภาพกราฟก สามารถมองเหนชดเจน
3.) ขนตอนพฒนา( Development)
ขนตอนพฒนา มดงตอไปน
3.1 เขยนโปรแกรมพฒนาระบบควบคมมอเตอรเพองานเกษตรผานพอรตขนาน
ดวยโปรแกรม Visual Basic 6
3.2 อปกรณฮารดแวรทงหมด ใชอปกรณทผลตและพฒนาในประเทศไทย
4.) ขนตอนการนาไปทดลองใชงาน (Implementation)
นาโปรแกรมระบบควบคมมอเตอรเพองานเกษตรผานพอรตขนานดวยโปรแกรม
วชวลเบสก ทพฒนาไปทดลองใชงานจรง ดวยการวดสญญาณไฟฟา ทออกจากพอรตขนาน LPT1
Address 378H Data Port Bit D0 วดดวยดจตอลมลตมเตอร และหาประสทธภาพการทางาน
ของอปกรณ
สวพ.
มทร.สวรรณภ
ม
5
5.) ขนตอนการประเมนผล (Evaluation)
ดาเนนการดงตอไปน
5.1 ประเมนผลการทางานระบบควบคมมอเตอรเพองานเกษตรผานพอรตขนาน
ดวยโปรแกรมวชวลเบสก
5.2 นาผลประเมน หาประสทธภาพการทางาน
การเกบรวบรวมขอมล
ดาเนนการดงตอไปน
1 นาโปรแกรมระบบควบคมมอเตอรเพองานเกษตรผานพอรตขนานดวยโปรแกรมวชวล-
เบสก ทพฒนาไปใชงาน
2. บนทกผลการทางานของโปรแกรมระบบควบคมมอเตอรเพองานเกษตรผานพอรต
ขนานดวยโปรแกรมวชวลเบสก
การวเคราะหขอมล
ดาเนนการดงตอไปน
1. วเคราะหหาความสามารถการทางานของ โปรแกรมระบบควบคมการทางานมอเตอร
เพองานเกษตรผานพอรตขนานดวยโปรแกรมวชวลเบสก
2. วเคราะหหาความสามารถการทางานของ อปกรณฮารดแวรระบบควบคมมอเตอรเพอ
งานเกษตรผานพอรตขนานดวยโปรแกรมวชวลเบสก
สถตทใชในการวเคราะหขอมล
สถตพนฐาน
- หาคารอยละ (Percentage)
- คาเฉลย (Mean)
ประโยชนทไดรบ
1. ไดโปรแกรมและระบบควบคมมอเตอรเพองานเกษตรผานพอรตขนาน
2. ไดอปกรณฮารดแวรระบบควบคมมอเตอรเพองานเกษตรผานพอรตขนาน
3. ไดแนวทางประยกตใชกบงานควบคมดานอนๆ ไดแก การควบคมการใหน าพช
การควบคมเครองผสมอาหารสตว การควบคมเครองใหอาหารสตว เปนตน
4. ประยกตใชประกอบการสอนวชา 201-44-08 Farm Controller for Computer
สวพ.
มทร.สวรรณภ
ม
6
นยามศพทเฉพาะ
1. โปรแกรม Visual basic หมายถง เปนภาษาโปรแกรมภาษาหนง พฒนาโดยบรษท
ไมโครซอฟท ทใหผเขยนโปรแกรมใชการอนเตอรเฟซแบบ graphical user interface บรรจอย
ภายใตผลตภณฑชดหนงชอวา Microsoft Visual Studioเราเรยกยอๆ วา VB เปนภาษาทใชสาหรบ
พฒนาโปรแกรมหรอแอปพลเคชน ททางานภายใตระบบปฏบตการ Windows และ Windows NT
2. พอรตขนาน (Parallel Port) หมายถง พอรต DB 25 ถกกาหนดขนในป ค.ศ. 1994 ภายใต
มาตรฐานทเรยกกนวา IEEE 1284 มขาอนเทอรเฟส 25 ขา สามารถสง/รบขอมลไดครงละหลายๆ
บต ใชในการเชอตอกบเครองพมพ และ อปกรณภายนอก นาไปประยกตใชงานไดหลายดาน ถา
เปนเครอง PC รนใหม จะไมมพอรตขนานวางอย หลงบอรด จะตองเชอมตอสายออกจากบอรดมา
อกท ยกเวนบางรน แตถาเปนโนตบคจะตองเพมการด PCMCIA To Parallel เพอตดตงพอรตขนาน
3. อปกรณฮารดแวร หมายถง อปกรณตางๆ ทประกอบขนเพอใชเชอตอระหวาง
คอมพวเตอรกบอปกรณทางาน บางครงเราเรยกวา อปกรณอนเตอรเฟส( interface)
สวพ.
มทร.สวรรณภ
ม
7
บทท2
เอกสารและงานวจยทเกยวของ
ความรเบองตนเกยวกบพอรตขนาน
พอรตขนาน ( Parallel port ) หรอเรยกวา พอรตเครองพมพ (Printer port) หรอ ( LPT1 )
ทาหนาทรบ สงถายขอมล สามารถสงขอมลไดครงละ 8 บต ( 1 ไบต ) ขอมลจะสงขนานกนไป ม
ลกษณะเหมอนกบเดนเรยงแถวแบบหนากระดาน มขวจานวน 25 ขว เรยกวา BD - 25 ดงรป
พอรตขนาน
รปท2.1 แสดงพอรตขนาน
พอรตขนาน ( Parallel port ) มความสามารถเขาถงอปกรณทตอพวงหลายเครองทตอพรอม
กน ทเรยกวา Channel addressing เปนผลทาใหใชอปกรณตางๆในเวลาเดยวกนได สามารถแบง
พอรตขนาน ตามลกษณะการทางาน ไดดงน
1. พอรตขนานแบบธรรมดา (Standard Parallel Port : SPP)
เปนพอรตมาตรฐานทคอมพวเตอรทกเครองจะมและทางานได คอการสงขอมลไปยง
เครองพมพไดอยางเดยว มาตรฐานของความเรวการสงขอมลอยระหวาง 50 - 100 Kb/Sec ซงจะ
ทางานชา เนองจากวาไมมวงจรชวยลดภาระการทางานของ ซพย (Processer ) นนคอซพยจะทา
สวพ.
มทร.สวรรณภ
ม
8
หนาทคอยตรวจสอบสญญาณทสงและรบจากเครองพมพและขอมลแตละไบต(Bi) ทาใหเกดการ
เสยเวลาเพมภาระการทางานของซพย (Processer )
2. พอรตแบบ สอสารสองทศทาง (Bidirectional Parallel Port (BPP)
เปนการเพมขดสามารถของอปกรณและซอฟตแวรใหทางานทสลบซบซอนขน มความเรว
ในการรบและสงขอมลประมาณ 1.38 Mb/Sec ทความถ 8.33 Mhz พอรตแบบนเปนมาตรฐาน
ของ IEEE 1284 กาหนดใหการทางานของพอรต ได 2 ลกษณะ คอ
2.1 อปกรณทตอพวงมความสามารถสงขอมลไดเหมอนกบคอมพวเตอร เราเรยก
การทางานแบบนวา แบบ Byte mode จะใชสายสญญาณขอมล ( Data line ) 8 เสน ( 8 บต) คอ
D0 - D7 การสงและรบขอมลระหวางคอมพวเตอรกบอปกรณทตอพวง เชน ปรนเตอร เปนตน
2.2 อปกรณทตอพวงไมมความสามารถสงขอมลไดเหมอนกบคอมพวเตอร จะ
อาศยสญญาณบอกสถานะ การทางาน (Status line) ม 4 เสน (4 บต) คอ S3 - S7 สงขอมลกลบแทน
เราเรยกการทางานแบบนวา แบบ Nibble mode
3. พอรตแบบ Enhanced Parallal Port (EPP)
พอรตแบบน มความเรวในการรบและสงขอมลประมาณ 2.7 Mb/Sec พอรตแบบนรบและ
สงขอมลไดสงกเพราะวา มวงจรชวยทางานแทนภาระของซพยทงหมด จงหวะการรบและสงขอมล
ยงผกกบจงหวะการทางานของบสแบบ ISA อกดวย นนคอสามารถรบและสงขอมลไดในเวลา
เทาๆกน นามาใชกบอปกรณรบสงขอมลขนาดใหญไดดเชน การดแลน ซดรอม เปนตน
4. พอรตแบบ Extended Capability Port (ECP)
เปนมาตรฐานการรบสงขอมลผานพอรตขนานแบบใหมทพฒนาขนโดยไมโครซอฟท
รวมกบ HP สาหรบใชเชอมตอกบอปกรณทมการรบสงขอมลปรมาณมากๆ เชน เครองพมพ
เครองสแกนเนอร เครองถายเอกสาร เปนตน โดยเพมการรบสงขอมลดวยวธการ DMA (Direct
Memory Access) สามารถรบสงขอมลกบหนวยความจาหลกของคอมพวเตอรไดโดยตรงไมตอง
คอยหรอผาน ซพย และเพมความสามารถในการบบอดขอมลใหมขนาดเลกลงไดถง 64เทา ดวย
วธการทเรยกวา RLE (Run Length Encoding) ทาใหการรบสงขอมลไดเรวอยในระดบใกลเคยง
กบแบบ Enhanced Parallel Port (EPP)
สวพ.
มทร.สวรรณภ
ม
9
ขอดของพอรตขนาน
พอรตขนานนอกจากจะใชงานกบพรนเตอรแลวยงสามารถประยกตกบอปกรณอยางอนได
ดวยเหตผลดงตอไปน
1. ดานความปลอดภย การตอพอรตไมจาเปนตองเปดฝาครอบเครองคอมพวเตอร เพราะวา
ขวตอพอรตตดตงอยขางนอก สะดวกตอการเชอมตอ และไมมโอกาสทจะเชอมตอผดพลาดเพราะ
ขวตอเปนเทเปอร
2.ความเขากนไดกบคอมพวเตอร เพราะเปนพอรตทใชงานไดกบคอมพวเตอรแทบทกรน
เปนพอรตมาตรฐาน ทาใหไมตองกงวลวาสรางวงจรแลวจะใชงานไมได
3.จานวนชองสญญาณกวางและเรว มจานวนพอรตอนพตเอาตพต (Input / Output) มาก
เพยงพอ ทจะนาไปใชในงานตางๆ และสามารถสงขอมลไดพรอมๆ กน
4.มความสะดวกในการใชงาน การเรยงตอสายสาหรบเชอมตอเขากบคอนเนกเตอร DB- 25
ของพอรตขนาน
ลกษณะทางกายภาพของพอรตขนาน
ขาของพอรตขนาน ( Parallel Pin) ขาตางๆทรบและสงขอมล มดงตอไปน
รปท2.2 ขาของพอรตขนาน
ทมา Http://www.electhat.com/E_elassroom/class_port1.htm
สวพ.
มทร.สวรรณภ
ม
10
รปท2.3 แสดงระบบบสภายในของพอรตขนาน
ทมา : อรรถพล และคณะ
กลมของสญญาณขาพอรตขนานสามารถแบงออกเปน 3 กลมไดดงน
1. พอรตดาตา (Data Port ) ทาหนาทสงสญญาณไดอยางเดยว จะมขาสญญาณ 8 ขาดงตอไปน
ตารางท 2.1 แสดงขอมลขาของพอรตดาตา
Pin No Bit name Bit No. Signal name Direction In / Output
2 D0 Bit 0 Data Output
3 D1 Bit 1 Data Output
4 D2 Bit 2 Data Output
5 D3 Bit 3 Data Output
6 D4 Bit 4 Data Output
7 D5 Bit 5 Data Output
8 D6 Bit 6 Data Output
9 D7 Bit 7 Data Output
สวพ.
มทร.สวรรณภ
ม
11
รปท2.4 แสดงวงจรภายในของพอรตดาตา
ทมา: อรรถพล และคณะ
จากรป แสดงใหเหนวา พอรตดาตา (Data Port Register) ประกอบไปดวยไอซบฟเฟอร
( IC 74ls244) ตวและไอซแลตซ ( 74ls374) เมอคอมพวเตอรตองการสงขอมลไปยงเครองพมพ
คอมพวเตอรจะเขยนขอมลไปยงไอซแลตซ ทง 8 บต เอาตพตของไอซแลตซ 1 คอ D0-D7 ซง
เอาตพตนจะไปปรากฏอยทพอรตขนานในตาแหนงขา 2ถงขา 9 และทขาเอาตพตนสญญาณ จะ
สงกลบไปเปนอนพตของบฟเฟอร ( IC 74ls244) ดวย ทาใหคอมพวเตอรสามารถอานคา
สถานะปจจบนทเกดขนกบพอรตได
เมอคอมพวเตอรสงขอมล ขอมลจะถกสงมาจากบสขอมลของคอมพวเตอรผานไปใหกบ
ไอซ แลตซ (IC 74ls374 ) ขอมล และเมอตองการใหขอมลปรากฎทเอาตพต คอมพวเตอรจะสง
สญญาณ Data Write ออกไปทขา clk ของไอซแลตซ (IC 74ls374 ) เอาตพต จะถกกรองดวย
วงจร R C ไดแก ตวตานทานและตวเกบประจ (Resitor and Capasitor ) เพอใหชวงเวลาทเปลยน
สถานะจากลอจก Hi เปนลอจก Low หรอจากลอจก 1 เปนลอจก 0 ใหเปนไปอยางชาๆ เพอ
ปองกนการผดพลาดของขอมล เนองมาจากการเปลยนแรงดนทรวดเรวทาใหเกดสญญาณรบกวน
ขอมลทสงออกไปมขอผดพลาดได จากวงจรนทาใหเกดการหนวงเวลาประมาณ 60 นาโนวนาท
ทาใหเอาตพตของพอรต มคณสมบตดงน กระแสซงกสงสด 24 mA กระแสซอรสงสด 2.6 mA
ระดบแรงดนของลอจก 1 ตาสดเทากบ 2.5 v (วดดวยดจตอลมเตอรขณะทางาน)
ระดบแรงดนสงสดสาหรบลอจก 0 เทากบ 0.2 V (วดดวยดจตอลมเตอรขณะทางาน)
สาหรบไอซบฟเฟอร (IC 74lS244) ทาหนาทอานขอมลกลบ เมออานคาคอมพวเตอร สงสญญาณ
Data Read ออกมาเพอเอนเอเบล (Enable)ไอซบฟเฟอร (IC 74lS244) กอนทจะอานคาจะตอง
ปอนคาเอาตพตใหมคาลอจก H “1” ทงหมดกอน
สวพ.
มทร.สวรรณภ
ม
12
2.พอรตสถานะ (Status Port )
ทาหนาทรบขอมล ไดอยางเดยว มขาสญญาณ 8 ขา ใชงาน 5 ขา จะสงเกตไดวาม
ขาสญญาณอยท งหมด 5 สญญาณดวยกนและจะเรยกชอเปน Input มตวเลขกาหนดตาแหนงบต
ของขาเหลาน สาหรบบต S7 จะมขอแตกตางจากบตอนๆ ทเมอสญญาณจากภายนอกสงเขา
มาแลวจะไมผานอนเวอรเตอร (Invertor) ในขณะทขาอนๆ ผานอนเวอรเตอร (Invertor) ทงหมด
ดงนนเมอขอมลผานจากขาอนพตไปยง ไอซ 74LS240 ซงเอาตพตมการกลบสถานะทาใหบต S7
ซงเปนบตเดยว ทมการกลบสถานะ
ตารางท2.2 แสดงขอมลขาของพอรตสถานะ
Pin No Bit name Bit No. Signal name Direction In / Output
10 S6 Bit 6 nAck Input
11 -S7 Bit 7 Busy Input
12 S5 Bit 5 PaperEnd Input
13 S4 Bit 4 Select Input
15 S3 Bit 3 nError Input
Bit 2 IRQ -
Bit 1 Reserved -
Bit 0 Reserved -
รปท2.5 แสดงวงจรพอรตสถานะ
ทมา : อรรถพล และคณะ
สวพ.
มทร.สวรรณภ
ม
13
3.พอรตควบคม (Control Port )
ทาหนาทใชควบคมเครองพมพ สญญาณในกลมนเปน Active Low ยกเวน สญญาณ
Intialize (Pin 16) ไมผานอนเวอรเตอร (Invertor) มขาสญญาณ ทงหมด 4 ขา
ตารางท2.3 แสดงขอมลขาของพอรตควบคม
Pin No Bit name Bit No. Signal name Direction In / Output
17 -C3 Bit 3 nESelect Output
16 C2 Bit 2 Intializa Output
14 -C1 Bit 1 nAutoFeed Output
1 -C0 Bit 0 nStrobe Output
18-25 Ground
พอรตควบคม (Control Port) ประกอบไปดวยบตเอาตพต 4 บตทตอออกไปยงเครองพมพ
สวนบตเอนเอเบลอนเตอรรปตไมไดถกตอ จะเหนวาเอาตพตของพอรตควบคม มอนเวอรเตอร
(Invertor) แบบคอลเลกเตอรเปดตอรวมอย โดยเอาตพตเหลานจะถกพลอปไวดวยตวตานทาน
(Resitor)สาหรบบต C2จะผานอนเวอรเตอร (Invertor) ถงสองตวทาใหทเอาตพตของบต C2 ไมม
การกลบสถานะลอจก
รปท 2.6 แสดงวงจรพอรตควบคม
ทมา : อรรถพล และคณะ
สวพ.
มทร.สวรรณภ
ม
14
พอรตควบคม (Control Port) สามารถอานกลบได ดวยการใชไอซบฟเฟอร (74LS240)
เอาตพตมอนเวอรเตอรตออยภายใน ทาใหคาทอานไดตรงกบคาทสงออกไป การควบคมการอาน
และเขยนขอมลกบพอรตควบคม (Control Port) คอมพวเตอรจะสงขอมลมาทขา Control write
และ Control Read เนองจากเอาตพตของพอรตควบคม (Control Port) เปนแบบคอลเลกเตอรเปด
ดงนนผใชงานสามารถใชพอรตนในการอานคาสญญาณอนพตจากภายนอกได โดยกอนทจะอานคา
จะตองทาใหขาพอรตทตองการอานคามลอจก 1 เสยกอน
ตารางท2.4 ความหมายของสญญาณ
Signal name ความหมาย
Data ขอมลทสงไปยงเครองพมพ
nAck เครองพมพพรอมทจะทางาน( Active low)
Busy เครองพมพไมรบขอมล
PaperEnd เครองพมพไมมกระดาษ
Select เลอกเครองพมพ
nError เครองพมพเกดขอพดพลาด (Active low)
IRQ ไมใชงาน
nESelect เลอกเครองพมพ
Intializa รเซตเครองพมพ
nAutoFeed ใหเครองพมพปอนกระดาษอตโนมต
nStrobe บอกใหเครองพมพทราบวามขอมลเขามา
Reserved ไมใชงาน
รปท 2.7 แสดงระบบบสของคอมพวเตอรสาหรบการตดตอกบพอรตขนาน
ทมา: อรรถพล และคณะ
สวพ.
มทร.สวรรณภ
ม
15
การทางานของพอรตขนาน
เพอใหเขาใจถงการนาเอาพอรตขนานใชงาน เราตองทาความเขาใจกอนวาพอรตขนาน
( Parallel Port ) บางครงเราเรยกวา พอรตเครองพมพ (Printer Port ) สาเหตทมชอน เนองจาก
พอรตนใชสาหรบตอเครองพมพนนเอง ดงนนจงขอยกตวอยางโดยใชอปกรณตอพวง นนคอ
เครองพมพ เพอใชอธบายการทางาน เมอคอมพวเตอรตดตอกบเครองพมพเพอสงขอมลออกทาง
เครองพมพโดยผานพอรตขนาน มขนตอนการทางานดงน
ขนตอนท 1 เรมจากคอมพวเตอรสงสญญาณ ขอมล ( OutputData) ไปยงเครองพมพ
คอมพวเตอรจะสงสญญาณ Strobe ออกไปกอน เพอแจงใหเครองพมพรบรวามการสงขอมลมา
ขนตอนท 2 คอมพวเตอรจะตองรอสญญาณ (Input) การตอบกลบจากเครองพมพ นนคอ
เครองพมพ จะสรางสญญาณชอ วา Busy เพอแจงใหคอมพวเตอรรวาเครองพมพยงไมพรอมทจะ
รบขอมลใหม ใหรอจนกวาจะพรอม
ขนตอนท 3 เมอเครองพมพพรอมทจะรบขอมลใหมเครองพมพจะสรางสญญาณ ทชอวา
Ack (acknowledge) สงไปยงคอมพวเตอรเพอแจงวา พรอมทจะรบขอมลใหมแลว
ขนตอนท 4 คอมพวเตอรสงสญญาณ ขอมล (OutpuData)ไปยงเครองพมพเพอให
เครองพมพ ทางานตามขอมลทไดรบ
ปกตแลวการทเครองพมพทางานไดนนตองใชสญญาณอนๆดวย ไดแก สญญาณ Reset
nAutoFeed Error PaperEnd เปนตน เนองจากเครองพมพตองทาหนาท 3 อยางดวยกนคอ รบ
ขอมลจากคอมพวเตอร พมพขอมลทรบเขามา และตอบสนองตอการใชงานของผใช เชนการ
เปลยนฟอนต เปนตน บางครงอาจเกดเหตการณทไมปกต เชน บฟเฟอรสาหรบรบขอมลเตม
(เครองพมพเปนอปกรณททางานทางกลยอมทางานไดชากวาการสงขอมลของคอมพวเตอร)
เครองพมพจะตองแจงไปยงคอมพวเตอรวาใหหยดสงขอมลชวคราว เนองจากไมสามารถรบขอมล
มากกวานไดแลว สญญาณทสงจากเครองพมพไปยงคอมพวเตอรคอสญญาณ และเมอเครองพมพ
เกดขอผดพลาด เชนกระดาษตด เครองพมพจะตองแจงไปยงคอมพวเตอรเชนกน โดยสญญาณท
แจงไปยงคอมพวเตอร เมอคอมพวเตอรรเซตเครองพมพ คอมพวเตอรจะตองสงสญญาณ ไปยง
เครองพมพเพอรเซตเครองพมพดวย
สรปวาพอรตขนานของคอมพวเตอรมสายสญญาณอยท งหมด 17 เสนสายสญญาณ
เหลานนจะมรจสเตอร 3 ตวควบคมการทางานไดแก
1 พอรตเอาตพตสาหรบสญญาณขอมล 8 เสน มรจสเตอร Data ควบคม
2 พอรตอนพตสาหรบการอานคาสถานะตางๆ จากภายนอกมอยดวยกน 5 เสน ใช
รจสเตอร Status ควบคม
สวพ.
มทร.สวรรณภ
ม
16
3 พอรตเอาตพตสาหรบสงสญญาณควบคมไปยงอปกรณภายนอก มอยดวยกน 4 เสนใช
รจสเตอร Control ควบคม
บลอกไดอะแกรมในรปท 2.7 แสดงระบบบสของคอมพวเตอรสาหรบการตดตอกบพอรต
ขนาน สญญาณเอาตพตจากพอรตขนานจะถกสงไปยงคอนเนกเตอรแบบ DB-25 คอมพวเตอรสวน
ใหญในปจจบนพอรตขนานจะมมาพรอมกบเมนบอรด ไมจาเปนตองใชการดเสยบเพมเตมเหมอน
ในอดต พรอมทงมฟงกชนการทางานทซบซอนขน แตยงคงสนบสนนการทางานของพอรตขนาน
ในรปแบบมาตรฐานอย
ระบบบสภายในของพอรตขนาน เทยบการทางานโดยทวไปกบการเชอมตอผานการดท
เสยบลงในสลอตของคอมพวเตอรแลว พอรตขนานจะมลกษณะใกลเคยงกน โดยการตดตอกบ
พอรตขนานจะตองมการอางแอดเดรส ตาแหนงแอดเดรสทใชอางถงจะเปนตาแหนง A0-A9 และ
ใชขา TRO และ IOW สาหรบเปนตวเลอกวาตองการอานหรอเขยนรจสเตอรตวใด จากการ
ดโคดแอดเดรส A0-A9 นเองทาใหไดสญญาณออกมาเพอไปควบคมหรอเอนเอเบล (Enable) วงจร
บฟเฟอรตางๆ ดงน
- Data write สญญาณเอนเอเบล (Enable) สาหรบนาขอมลทอยในบส Dataไปออกทขา
Data ของพอรตขนาน
- Data read สญญาณเอนเอเบล (Enable) สาหรบอานขอมลจากขา Data ของพอรตขนานมา
เกบไวในบส Data
- Control Write สญญาณเอนเอเบล (Enable) สาหรบนาขอมลทอยในบส Data ไปออกทขา
Control ของพอรตขนาน สาหรบพอรตนนอกจากจะสงขอมลออกไปยงพอรตขนานแลว ยงทา
หนาทอนาเบลการอนเตอรรปตของการเปลยนแปลงสญญาณทพอรต Status
- Control Read สญญาณเอนเอเบล(Enable) สาหรบอานคาขอมลจากขา Control มาเกบไว
ในบส Data
- Status Read สญญาณเอนเอเบลสาหรบอานคาขอมลจากขาพอรต Status มาเกบไวในบส
Data
สวพ.
มทร.สวรรณภ
ม
17
การขบอปกรณเอาตพต
ในการควบคมอปกรณผานพอรตขนานไมสามารถทาไดโดยตรงเนองจากกระแสทออกมา
นนตา และเปนอนตรายตอคอมพวเตอร กระแสไฟมโอกาสไหลเขาคอมพวเตอรได ดงนนการใช
พอรตขนาดไปขบอปกรณภายนอก จะตองมวงจรบฟเฟอรททาหนาทจายกระแสอยางเพยงพอแก
ความตองการของอปกรณเอาทพต แตวงจรบฟเฟอร มความสามารถในการจายกระแสทระดบหนง
เทานน เมอเราตองการจะจายกระแสไฟฟาสงเพอควบคมอปกรณใหทางาน เชนมอเตอรไฟฟา
โซลนอยด ขดลวดความรอน เปนตน จาเปนตองมอปกรณทเรยกวา อปกรณการขบ ( Driver )
อปกรณขบ ( Driver ) ขนพนฐานทนยมใชกนทวไปดงน
1.ใชทรานซสเตอรขบอปกรณ (Transitor Driver)
2.ใชออปโตคปเปอรขบอปกรณ ( Opto – coupler Driver)
3.ใชไอซขบอปกรณ (IC Driver)
4.ใชรเลยขบอปกรณ (Relay Driver)
1. ใชทรานซสเตอรขบอปกรณ (Transitor Driver) เหมาะสาหรบโหลดทมกระแสตงแต
30 – 200 มลแอมป เชนมอเตอรขนาดเลก หลอดไฟฟาวตตต าๆ ใชทรานซสเตอร 3 รปแบบคอ
ก.แบบเดยว
รปท 2.8 แสดงวงจรตอใชงานโดยใชทรานซสเตอรแบบเดยว
ทมา: อรรถพล และคณะ
ข. แบบคาสเดค แบบนมความสามารถรบกระแสใหสงได เปนการนาทรานซสเตอร
กระแสตามาขบทรานซสเตอรกระแสสงใหทางาน สามารถควบคโหลดทมกระแสสงได
สวพ.
มทร.สวรรณภ
ม
18
รปท 2.9 แสดงวงจรตอใชงานโดยใชทรานซสเตอรแบบคาสเดค
ทมา: อรรถพล และคณะ
ค. แบบดารลงตน
เนนนาทรานซสเตอร 2 ตวรวมไวในตวเดยว เพอทาใหความสามารถในการขบกระแส
เอาตพตไดสงและเรว สงผลใหขนาดของวงจรเลกลงและสะดวกในการตดตง
รปท 2.10 แสดงวงจรตอใชงานโดยใชทรานซสเตอรแบบดารลงตน
ทมา: อรรถพล และคณะ
2. ใชไอซขบอปกรณ
การใชไอซขบอปกรณทมความปลอดภยสง เหมาะกบพนทตดตงนอย และตองการให
ขนาดวงจรเลกกระทดรด ลกษณะของวงจรทใชไอซจะเปนแบบคอลเลกเตอรเปด เชน ไอซเบอร
ULN 2003 ULN2803A เปนตน
สวพ.
มทร.สวรรณภ
ม
19
รปท 2.11 แสดงตาแหนงขา ULN 2003
ทมา Http:///www.jaycar.com.au/images_uploaded/uln2003.pdf
รปท2.12 แสดงรป ULN 2802 ขาสญญาณ
ทมา:Http:///www.us.st.com/stonline/books/pdf/docs/1536.pdf
รปท2.13 แสดงการตอสญญาณใชงาน
ทมา:Http:///www.us.st.com/stonline/books/pdf/docs/1539.pdf
สวพ.
มทร.สวรรณภ
ม
20
3. ใชออปโตขบอปกรณ ( OPTO COUPLERS)
ออปโตคปเปอร ( Opto couplers) คออปกรณอเลกทรอนกสททางานดวยแสง ทาหนาท
เปนตวกลางทเชอมโยงระหวางอนพตกบเอาตพตโดยใชแสง (optical) จะแยกสวนของอนพตกบ
เอาตพตออกจากกนทางไฟฟาโดยสนเชง ทาใหกราวดอนพตและเอาตพตไมตอกน ทาใหเอาตพต
เปนวงจรไฟฟากระแสสลบได
รปท2.14 แสดงรปรางออปโตคปเปอร
รปท2.15 แสดงโครงสรางภายในออปโตคปเปอรแบบตางๆ
ทมา:Http:///www.us.st.com/stonline/books/pdf/docs/1203.pdf
นยมใชกบอปกรณโหลดทมกระแสสงๆ สวนมากจะเปนไฟฟากระแสสลบ หากใช
คอมพวเตอรควบคมโดยตรง จะสงผลเสยหายตอคอมพวเตอร จาเปนตองแยกระบบกราวดของ
ระบบคอมพวเตอรออกจากวงจรเอาตพต เพอลดสญญาณรบกวน ไฟฟากระชากหรอทรานเซยนต
( Transient ) และโหลดทไวตอสญญาณรบกวน ปองกนกระแสยอนกลบ เพอคอมพวเตอร
ปลอดภยจากการใชงานและอปกรณโหลดทางานได เปนปกต
สวพ.
มทร.สวรรณภ
ม
21
รปท2.16 แสดงวงจรใชงานของออปโตคปเปอร
4. ใชรเลยขบอปกรณ (Relay Driver)
เปนอปกรณทนยมใช กนมากในดานอตสาหกรรม เนองมาจาก ทนกระแสไดสง มหลาย
ขนาดใหเลอก ราคาถก ตดตงงาย และหาซอไดทวไป ทางานโดยการเหนยวนาแมเหลกไฟฟา
เพอใหคอนแทคทางาน โดยการตดวงจรหรอตอวงจร
รปท 2.17 แสดงโครงสรางของรเลย
รปท 2.18 แสดงรปแบบรเลย
ทมา :Industrialcontrols and Measuring
สวพ.
มทร.สวรรณภ
ม
22
ตวอยางการประยกตใชงาน สามารถนาอปกรณดงกลาวมาตอเปนวงจร ดงรป
รปท 2.19 การตอวงจรโดยใชไอซรวมกบรเลย
รปท2.20 การตอวงจรโดยใชออปโตคปเปอร ทรานซเตอรและรเลย โหลดเปนหลอดไฟ
ทมา: อรรถพล และคณะ
รปท 2.21 การตอวงจรโดยใชออปโต ทรานซเตอรและรเลย โหลดเปนมอเตอรไฟฟา
ทมา: อรรถพล และคณะ
สวพ.
มทร.สวรรณภ
ม
23
การเขยนโปรแกรมตดตอกบพอรตขนาน
เมอตองการตดตอกบอปกรณ อนพต เอาทพต (Input / Output) โดยผานพอรตขนาน
(Parallel Port) จะตองกาหนดแอดเดรสทตองการตดตอ โดยแบงออกเปน 3 ตาแหนง คอ
แอดเดรสของรจสเตอรดาตา(Data Registor), รจสเตอร สถานะStatus Registor) และรจสเตอร
ควบคม (Control Registor) สาหรบแอดเดรสพอรตขนาน ม 3 ชดคอ LPT1, LPT2, LPT3
ตารางท 2.5 แสดงแอดเดรสของพอรตขนาน
ชอพอรต LPT1 LPT2 LPT3
ฐานสบ ฐานสบหก ฐานสบ ฐานสบหก ฐานสบ ฐานสบหก
DATA 888 378H 956 3BCH 632 278H
STATUS 889 379H 957 3CDH 633 279H
CONTROL 890 37AH 958 3BEH 634 27AH
คาสงทใชรบและสงขอมลผานพอรตขนาน
เมอตองการตดตอกบพอรตขนานในตาแหนงใด กจะสงขอมลออกไปทพอรตขนานใน
ตาแหนงนน และแอดเดรสของรจสเตอรนนๆ
คาสงสงขอมลออกพอรตขนาน
OUT portnumber, data
ตวอยางตองการสงคาลอจก “1” ออกไปทกบตของพอรต Data แอดเดรส LPT1
OUT &H378 , &HFF
เมอ
Out = คาสงเปนการสงคาขอมลออกเอาตพตของพอรต
&H = แสดงถงตวเลขฐานสบหก
สวพ.
มทร.สวรรณภ
ม
24
378 = เปนแอดเดรสของรจสเตอร Data สาหรบ LPT1
FF = เปนขอมลเลขฐานสบหก ใหทกบตของรจสเตอร Data มลอจกเปน 1
คาสงรบขอมลจากพอรตขนาน
INP (n)
ตวอยาง อานคาจากพอรตขนานมายงคอมพวเตอรผานทางพอรต Status ของ LPT1
Temp = Inp ( 2H 379)
เมอ
Temp = เปนตวแปรทใชเกบขอมลทอานไดจากพอรตขนาน
INP = เปนคาสงสาหรบอานคาขอมล
2H = เปนขอมลเลขฐานสบหก
379 = เปนตาแหนงแอดเดรสของรจสเตอร Status สาหรบ LPT1
สวพ.
มทร.สวรรณภ
ม
25
ระบบเลขจานวน
คอมพวเตอรทางานดวยไฟฟา โดยจะมการแทนสภาวะของกระแสไฟฟาได 2 สภาวะคอ
สภาวะ no = 1 (มกระแส) และ สภาวะoff = 0 (ไมมกระแส) ในชวตประจาวนเราจะคนเคยกบ
เลขทม10จานวนคอ 0 - 9 เรยกวาเลขฐานสบ ระบบเลขฐาน ทใชกนอยไดแก
1.ระบบเลขฐานสอง (Binary Number System) ประกอบดวยเลข 0 และ 1
2. ระบบเลขฐานแปด (Octal Number System)ประกอบดวยเลข 0 , 1 , 2, 3 , 4 , 5, 6 และ 7
3.ระบบเลขฐานสบ ( Decimal Number System) ประกอบดวย เลข 0 , 1 , 2 , 3 , 4 ,5 , 6 ,
7 , 8 และ 9
4. ระบบเลขฐานสบหก ( Hexa decimal Number System ประกอบดวย 0 , 1 , 2 , 3 , 4, 5 ,
6 , 7 , 8 , 9 , A B , C , D , E และ F ( A = 10, B = 11, C = 12, D = 13, E = 14, F = 15 )
คอมพวเตอรจะใชระบบเลขจานวนเปนหลกอย 3 ระบบไดแก
1.ระบบเลขฐานสอง (Binary Number System)
2.ระบบเลขฐานแปด (Octal Number System)7
3.ระบบเลขฐานสบหก( Hexa decimal Number System
การแปลงฐานของระบบตวเลขสามารถทาไดหลายรปแบบวธ ขนอยกบวตถประสงค
ก.วธการแปลงเลขฐานสบเปนเลขฐานสอง ทาไดตามขนตอนดงตอไปน
1. หารเลขฐานสบดวย 2
2. ถาผลหารไมมเศษจะมคาเปน 0 ถาผลหารมเศษ เศษ 1
3. หารตอไปจนกระทงผลหารเปน 0 เหลอแตเศษ
4. เรยงเศษตวแรกไวทางขวาสด ตาแหนงนเรยกวาหลกทมคาตาสด ( Least Signiticant bit ;
MSB) คาทไดจะเปนคาของเลขฐานสอง
ข.วธการแปลงเลขฐานสองเปนฐานสบ ทาตามขนตอนตอไปน
1 คณแตละบต (bit ดวย 2 จากทางขวาไปทางซาย เมอ n = 0,1… 8
2. บวกผลคณของแตละหลกกจะไดผลลพธของเลขฐานสบ
สวพ.
มทร.สวรรณภ
ม
26
ค.วธการแปลงเลขฐานสอง เปนเลขฐานแปด
แบงเลขฐานสองเปนกลม กลมละ3 ตวเลข (3หลก) ดงตวอยาง
ตวอยาง แปลง 110101010 เปนเลขฐาน 8
วธทา
1 1 0 1 0 1 0 1 0
0 x 2 = 0
1 x 2 = 2 2
0 x 2 = 0
71 x 2 = 1
70 x 2 = 0 5
71 x 2 = 4
70 x 2 = 0
71 x 2 = 2 6
71 x 2 = 4
ตอบ 6 5 2
110101010 แปลงเปนเลขฐานแปด = 652
ขอควรจา : 3 หลกของเลขฐานสอง เทากบ 1 หลกของเลขฐานแปด
สวพ.
มทร.สวรรณภ
ม
27
ง. วธการแปลงเลขฐานสบหกเปนเลขฐานสอง ทาตามขนตอนตอไปน
1ใหแบงเลขฐานสบหกออกเปนกลม กลมละ4 หลก ของเลขฐานสอง
2.เพมศนยนาหนากลมทไมครบหลก
3. เปลยนตวอกษรเปนคาตวเลข
ตวอยาง แปลง B2CH เปนเลขฐานสอง ( H ไมมคา ใชบอกวาเปนเลขฐาน 16)
วธทา
B 2 C
เศษ
13/2 16 1
6/2 3 0
3/2 1 1
½ 1 1
2/2 0 0
½ 0 1
11/2 5 1
5/2 2 1
2/2 1 0
½ 0 1
ตอบ 1 0 1 1 0 0 1 0 1 1 0 1
แปลง B2CH เปนเลขฐานสอง = 101100101101
สวพ.
มทร.สวรรณภ
ม
28
ตารางท 2.6 แสดงคาเทยบเลขฐาน
เลขฐานสบ เลขฐานสอง เลขฐานแปด เลขฐานสบหก
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111
0
1
2
3
4
5
6
7
-
-
-
-
-
-
-
-
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
บต, ไบต
ขอมลในคอมพวเตอรเรมทหนวยทเลกทสด ซงเราเรยกกนวา บต (bit ) บตเปนชอทยอมา
จากคาวา Binary digit ไดแกเลขฐานสอง จานวนเลขทประกอบขนจากเลข 2 ตว คอ 0 และ 1
มสถานะการทางานดงน
สถานะ
สถานะ
0 = =
1 = =
สวพ.
มทร.สวรรณภ
ม
29
นอกจากนสามารถแทนเปน คาเทจ-จรง หรอ ไม – ใช กได ดวยแนว ความคดเกยวกบบต
นเองททาใหคอมพวเตอรสามารถจดการขอมลภายในได ทงนกเนองจากการทางานของวงจร
อเลกทรอนกสนน สามารถแสดงสญญาณคา ปด – เปด ไดในอตราความเรวทสงยง ดงนนสงท
ผออกแบบคอมพวเตอรตองกระทาคอ การพยายามออกแบบวงจรดงกลาว และวธการในการสราง
ขอมลทเกยวของกบการประมวลผลดวย
สงทนาสนใจและสาคญมากทสดทจะกลาวถงในอนดบตอไปไดแก การรวบรวมบตเขาไว
ดวยกนเปนหนวยขอมลทเราเรยกวา ไบต (byte ) โดยในหนงไบตจะประกอบดวย 8 บต สาเหตท
ไบตเปนสงทสาคญสาหรบเรากเพราะวา เปนหนวยขอมลพนฐานทสดทใชงานอยในคอมพวเตอร
แตคอมพวเตอรกสามารถอางถงบตทอยภายในแตละไบตได
ดงทกลาวไปแลววาในหนงไบตจะมอย 8 บต นนกคอวาจะมบต 0 หรอ 1 รวมกนอย 8 ตวซง
จากกฎทางคณตศาสตรไดบอกเราวา ถาเรามของอย 8 อยาง (8 บต) และในของแตละอยางนนมคาท
เปนไปได 2 คา ( 0 หรอ 1 ) เราจะมวธการเรยงสงของทง 8 อยางนนไดถง 256 วธ ( 2 ยกกาลง 8 )
นนกคอคาขอมลใน 1 ไบต สามารถมไดแตกตางกนถง 256 คา ตวเลขเหลานจะมความสาคญในการ
เขยนคาสงควบคมการทางานของอปกรณตอไป
เราเรยกบตทางขวามอสดในแตละไบตวาเปนบตท 0 ดงนนบตซายมอสดจะเปนบตท 7
สวนคาประจาบตนนกจะใชหลกเดยวกน คอจะมคาเทากบ 2 ยกกาลงดวยเลขทบตนน ตวอยางเชน
บตท 3 ( บตตวท 4 จากขวา ) จะมคาเทากบ 2 ยกกาลง 3 ซงเทากบ 8 และบตท 7 จะมคาเทากบ
128 เปนตน
ขอมลในเครองคอมพวเตอรสามารถถกนาไปใชงานไดหลายอยาง แตมอย 2 อยางทถอวา
สาคญทสดคอ การใชขอมลในลกษณะของคาตวเลข และในลกษณะของขอความ อยางไรกดขอมล
ทถกจดเกบอยในเครองนนถอวาเปนขอมลดบ กลาวคอ เครองคอมพวเตอรจะไมสามารถรบรไดวา
ขอมลสวนใดจะถกนามาใชเปนตวเลขหรอขอความ ( ขอมลแตละไบตจะประกอบดวยกลมของ
ตวเลข 0 และ 1 เทานน ) มนขนอยกบการนาขอมลมาประยกตใชวาจะถกมองใหเปนตวเลขหรอ
ขอความหรออน ๆ โดยในกรณของขอความแลว เราจะถอวาขอมล 1 ไบต จะใชเกบตวอกขระ 1
ตว ยกตวอยางเชน ตวอกษร a จะถกเกบในเครองดวยรหส 1 ไบตอนไดแกรหส 65 หรอ 01000001
เปนตน
ในขณะทไบตเปนหนวยขอมลพนฐานทสดของคอมพวเตอร บางครงคอมพวเตอรกตอง
การทางานกบไบตเปนค ซงจะทาใหเครองคอมพวเตอรทางานกบขอมลไดถงคราวละ 16 บต
(2 ไบต ) ไดตงชอหนวยของขอมลดงกลาวนวา เวรด
สวพ.
มทร.สวรรณภ
ม
30
เราเคยไดยนวาคอมพวเตอรมขนาด 8 บต 16 บต หรอแมแต 32 บต นนคอขนาดของ
ขอมลทคอมพวเตอรสามารถประมวลผลไดในแตละครง ยงมคาศพททจะตองรจกกนอก คาวา
กโลไบต (kilobyte) หรอเรยกกนสน ๆ วา “ K “ คณ ดวย1,000 และ เมกะไบต (megabyte) หรอเมก
“ M “ คณ ดวย1,000 ,000 กกะไบต ( gigabyte)
ดงทไดเกรนไปแลววา k หรอ กโลมกจะใชเปนหนวยการวดระดบ 1000 แตคา k ใน
ความหมายของคอมพวเตอรแลว จะหมายถงคา 1024 อนไดแกคา 2 ยกกาลง 10 ทนเนองจาก 1024
เปนคาทใกลเคยงกบ 1000 เรากเลยเหมาเรยกคา 1024 นวา 1 k เสยเลย นนกคอเมอเราพดถง 64k ใน
ระบบคอมพวเตอร กจะหมายถง 64 คณกบ 1024 ซงกจะได 65,536 นนเอง
หนวยทสาคญอนตอมาไดแก เมก หรอ เมกะ ( mega) ซงมคาเทากบ 2 ยกกาลง 20 หร อ
1024 คณ 1024 คอมคาเทากบ 1,048,576 หรอประมาณ 1 ลาน (หมายถงหนวยเมกะ) เราเคยไดยน
กนมาบางวา เชน หนวยความจา มขนาด 256 Mb หรอ 256 เมกะไบต นนกหมายความวา
หนวยความจาของเครองเขาสามารถจขอมลไดประมาณหนวยความจาลานตวอกษรหรอจะเอาแนๆ
กคอ 40 คณกบ 1,048,576 นนเอง
ตอจากเมก กเปนหนวย กกะ อนไดแก 1 กโลของเมก หรอ 2 ยกกาลง 30 หรอเทากบ 1024
คณ 1024 คณ 1024 ไบตอนไดแกคา 1,073,741,824 ไบตหรอประมาณพนลาน (billion) นนเอง
สวนเทอรา ไดแก เมกของเมกหรอ 2 ยกกาลง 40 หรอประมาณ ลานลาน (trillion) หรอเอาใหแนๆ
กไดแก 1024 คณ 1024 คณ 1024 คณ 1024 ซงจะเทากบ 1,099,511,627,776
สรปวา ขอมลตาง ๆในระบบคอมพวเตอรไมไดมาจากเลขฐานสองเพยงแคหลกเดยว ดงนน
จงไดมการตงชอเฉพาะเรยกกลมของเลขฐานสองทมจานวนตงแต 1 หลกขนไปโดยชอตาง ๆ มดงน
เลขฐานสองหนงหลกเรยกวา 1 บต ( Bit )
4 บต เทากบ 1 นบเบล (Nibble )
2 นบเบล เทากบ 1 ไบต ( Byte )
2 ไบต เทากบ 1 เวรด (Word)
2 เวรดเทากบ 1 ดบเบลเวรด (Double world )
สวพ.
มทร.สวรรณภ
ม
31
การเขยนโปรแกรมตดตอกบพอรตขนานดวย Visual Basic
การเขยนโปรแกรมตดตอกบพอรตขนานดวย Visual Basic จะไมมคาสงสาหรบการตดตอ
กบพอรตโดยตรงคอ คาสง Inp() และคาสง OUT ดงนนเพอใหสามารถตดตอกบพอรตขนานได
จะตองเพมฟงกชน ทอยในรป API ( Application Programming Interface) และโปรแกรมบางตวเขา
ไปทอยในรป DLL(Dynamic Linked Library) ประกอบดวยไฟล
1. Inpout32.dll เปนไลบรารพเศษทใชเขยนโปแกรมตดตอกบพอรตขนาน (parallel port)
ดวย Visual basic โดยใชฟงกชน ทอยในรป API ( Application Programming Interface) สามารถ
เขาไปดาวนโหลดไดท Http://www.freewebs.com/logix4u หรอ Http://www.signalogic.com เปน
ตน แลวนามาตดตงท C:/Windows\System หรอ C:/Windows\System32
2. IO.DLL เปนอกไฟลหนงทสามารถใชตดตอกบพอรตขนาน (parallel port) ดวย
โปรแกรมVisual basic สามารถใชไดกบระบบปฏบตการ 32 Bit ได ไดแก Win95/98/ME/2000/XP
สาหรบการตดตงไฟล IO. DLL จะตองเกบไวในไดเรกเตอร System ของ Windows การ
กาหนดคาในโปแกรมเพอเรยกใชงานไฟล DLL มรปแบบการกาหนดคาดงน
Public Declare Function Inp Lib “io.dll” _
Alias “PortIn” (ByVal Port Address As Integer) As Byte
Public Declare Sub Out Lib “io.dll”_
Alias “PortOut” (ByVal Port Address As Integer ,ByVal Value As Byte)
สามารถหาขอมลเพมเตมไดท Http://www.geekhideout.com
การประกาศฟงกชนใน Windows API
ฟงกชนตางๆของ windows API Visual Basic ไดจดเตรยมไวใหแลวหรอเราจะเขยน
ขนมาใหมกได เราจะตองประกาศชอฟงกชนของ Windows API กอนการใชงาน โดยมรปแบบ
ฟงกชนดงตวอยางฟงกชน GetMuดงน
Public Declare Function GetMenu Lib “user32” (Byvalhwnd As Long) As long
สวพ.
มทร.สวรรณภ
ม
32
ประกอบดวย
Declare Function = แสดงการประกาศ ฟงกชน
GetMenu = ชอฟงกชน
Lib “user32” = บอกใหทราบวาคนหาฟงกชนนจากไฟล user32.Dll
(Byvalhwnd As Long) =รายการพารามเตอรทผานคาใหกบ ฟงกชน
As long =เปนชนดของขอมลคนคาใหกบผเรยกใช
ตวอยาง การประกาศฟงกชน (ทมา Http://www.thaiio.comprog-cgi/porming.cgi?0006)
ในสวนของ Output Port
Public Declare Sub Out Lib "DllPort.dll" Alias "Out32" (ByVal PortAddress As Integer, ByVal
Value As Integer)
ในสวนของ Input Port
Public Declare Function Inp Lib "DllPort.dll" Alias "Inp32" (ByVal PortAddress As Integer) As
Integer
แตถาหากเขยนโปรแกรมใชเพยงแคฟอรมเดยวกจาเปนตองใชโมดลกไดโดยเพยงแค
เปลยนจากคาวา Public ไปเปน Private รปแบบเปนดงน
Output Port ประกาศแบบ Private
Private Declare Sub Out Lib "DllPort.dll" Alias "Out32" (ByVal PortAddress As Integer, ByVal
Value As Integer)
Input Portประกาศแบบ Private
Private Declare Function Inp Lib "DllPort.dll" Alias "Inp32" (ByVal PortAddress As Integer) As
Integer
ทง 2 วธทกลาวมาควรจะเขยนใหเปนบรรทดเดยวกน แตถาหากจะเลอนบรรทดลงตองเวนวรรค
บรรทดบนกอนแลวใสเครองหมายขด _ ตอจากนนจงมาเขยนทบรรทดดานลางตอได
สวพ.
มทร.สวรรณภ
ม
33
ตวอยางการเรยกใชฟงกชนรบขอมล (ทมา Http://www.thaiio.comprog- cgi/porming.cgi?0006)
Private Declare Function Inp32 Lib "DllPort.dll" Alias "Inp32" (ByVal PortAddress As Integer)
As Integer
Dim StatusValue As Integer
StatusValue= Inp32 (&H379)
แตถาหากเขยนโปรแกรมใชเรยกฟงกชนในหลายๆฟอรมกจาเปนตองสรางไฟลโมดล โดย
ตองเปลยนจากคาวา Private ไปเปน Public แลวประกาศฟงกชนในไฟลโมดลตามรปแบบเปนดงน
Public Declare Function Inp Lib "DllPort.dll" Alias "Inp32" (ByVal PortAddress As Integer) As
Integer
สวพ.
มทร.สวรรณภ
ม
34
การเขยนโปรแกรมดวย Visual Basic
ภาษา BASIC ไดพฒนาขน ป ค.ศ. 1963 โดย Thomas Kurtz โดยเนนความงายตอการเขาใจ
และการใชงาน รวมทงการทางานในรปแบบ Interpreter คอทางานเรยงตามบรรทด ตอมาไดพฒนา
เปน GW-BASIC ซงเปน Interpreter บนระบบปฏบตการ DOS ตอมาในป ค.ศ. 1982 ไดเพมความ
สามารถในการประมวลผล โดยการตดเลขประจาบรรทดออก และมาใชรปแบบของ Sub Program
User Defind แทน เรยกวา QUICK BASIC
Visual Basic เปนภาษาคอมพวเตอรทไดรบการพฒนาตอเนอง ตงแต QUICK BASIC
จนกระทงถง PDS BASIC จากนน Microsoft ไดนาเอาหลกการมปฏสมพนธระหวางผใชกบเครอง
คอมพวเตอรมาใชในการ ออกแบบภาษา BASIC จนเปนทมาของคาวา Visual Basic
Visual Basic เปนภาษาคอมพวเตอร ทมประสทธภาพสง และออกแบบมาเพอทางานบนระบบ
ปฏบตการ Windows คาวา Visual หมายถงวธการทใชสรางตดตอกบผใชแบบกราฟก (GUI :
Graphic User Interface) สวน BASIC เปนคาทยอมาจาก (Beginner All-Purpose Symbolic
Instruction Code ) ในทนจะขอเรยก Visual Basic สนๆวา VB
Visual Basic เปนภาษาหนงทไดรบความนยมในการพฒนาโปรแกรมบนระบบปฏบตการ
Windows มจดเดนอยทเครองมออานวยความสะดวกทาใหใชงานงาย ปจจบนแนวโนมการพฒนา
แอปพลเคชนไมไดอยบน Windows เทานน ยงรวมถงการทางานบนเวบและการทางานรวมกบ
อปกรณอเลกทรอนกสตางๆ ผานทางเครอขายอนเตอรเนต แตเนองจาก Visual Basic เดมยงไม
รองรบการทางานดงกลาวอยางครอบคลม VB.net จงไดถกพฒนาขนภายใตเทคโนโลย net.
Visual Basic ไดเตรยมความสามารถเกยวกบ WYSIWYG ทงายสาหรบผพฒนา เพอการ
ออกแบบหนาจอแอปพลเคชนบน Windows ไดตามตองการอยางสะดวกและรวดเรว โดยการยงคง
อยในรปแบบ IDE (Integrated Development Environment ) ซงประกอบดวยเครองมอตางๆทใชใน
การพฒนาโปรแกรมทงนเพอความสะดวกของผใช
Visual Basic เปนภาษาคอมพวเตอร (Programming Language)ทพฒนาโดยบรษท
ไมโครซอฟท ซงเปนบรษทยกษใหญทสรางระบบปฏบตการ Windows95/98 และ Windows NT ท
เราใชกนอยในปจจบน โดยตวภาษาเองมรากฐานมาจากภาษา Basic ซงยอมาจาก Beginner’s All
Purpose Symbolic Instructionถาแปลใหไดตามความหมายกคอ “ชดคาสงหรอภาษาคอมพวเตอร
สาหรบผเรมตน” ภาษา Basic จดเดนคอผทไมมพนฐานเรองการเขยนโปรแกรมเลขกสามารถ
เรยนรและนาไปใชงานไดอยางงาย เมอเทยบกบการเรยนภาษาคอมพวเตอรอนๆ เชน ภาษาซ (C)
ปาสคาส (Pascal) ฟอรแทรน (Fortian) หรอ แอสเซมบล (Assembler)
สวพ.
มทร.สวรรณภ
ม
35
การเขยนโปรแกรมหรอเราจะเรยกอกอยางหนงวาการสรางแอพพลเคชน (Application )
Visual Basic 6.0 เปนโปรแกรมททางานบนภายใตระบบปฏบตการวนโดว มรปแบบการเขยน
โปรแกรมไปพรอม ๆ กบการแสดงผลลพธไดทนท มเครองมออานวยความสะดวกในการเขยน
โปรแกรมอยางมากมาย และการแสดงขอผดพลาด ลดความซบซอนยงยากดวยภาษาทเรยบงาย
รปท2.22 แสดงภาพโปรแกรม Visual Basic 6.0
ขอดโปรแกรม Visual Basic มดงน
1. ภาษาเขยนโปรแกรมงาย ภาษา Visual Basic ใชภาษาทอานงายทาความเขาใจงาย
เพราะภาษาทใชใกลเคยงกบภาษาของมนษยทใชงานปกต
2. มการตรวจสอบความผดพลาดของภาษา Visual Basic มเครองมอตรวจสอบความ
ถกตองของภาษา และการแกไขโปรแกรมทเขยนขนวาถกตองหรอไม ถาไมถกตองจะแสดงผล
พรอมคาแนะนา ทาใหการเขยนโปรแกรมมความถกตองและรวดเรว
รปท2.23 แสดงการใชคาสงไมถกตอง
สวพ.
มทร.สวรรณภ
ม
36
รปท2.24 แสดงDebugหาขอผดพลาด
3. การสรางพฒนาแอพพลเคชนไดงายและรวดเรว Visual Basic 6.0 ไดมเครองมอ
พฒนาสรางแอพพลเคชน ซงอยในรปทเรยกวา RAD ( Rapid Application Development ) ทาให
การเขยนแอพพลเคชนไมจาเปนตองรเกยวกบการควบคมฮารดแวร เชน เมาท คบอรด เปนตน นน
คอเราไมจาเปนตองเขยนโปรแกรมควบคมการทางานของเมาท เมาทกยงสามารถใชงานได
4. มเครองมอ ( tool box) สาหรบนามาประกอบแอพพลเคชน (Application) ถกรวบรวมท
เรยกวา IDE (Integrated Development Environment) อยางมากมาย ลดความยงอยาก การเขยน
โปรแกรมและสามารถเรยกใชระบบเอกสารขอความชวยเหลอได
รปท2.25 แสดงเครองมอ( tool box)
สวพ.
มทร.สวรรณภ
ม
37
5.มแหลงขอมลเกยวกบ Visual Basic มากมาย ใหศกษาเชน บทความ หนงสอ เวบไซต เปนตน
รปท 2.26 เวบไซตmsdn
สวพ.
มทร.สวรรณภ
ม
38
Click
Click
Click
การใชโปรแกรม Visual Basic
วธเปดโปรแกรม Visual Basic เพอใชงานสามารถทาตามขนตอนดงน
Click
รปท2.27 แสดงการเปดโปรแกรม Visual Basic
สวพ.
มทร.สวรรณภ
ม
39
หนาตางหลกของ โปรแกรม Visual Basic 6.0
กอนการใชงาน Visual Basic จะตองรจกหนาตาของ Visual Basic เสยกอน ลกษณะของ
Visual Basic 6.0 จะมลกษณะการทางานทเรยกวา IDE ( Integrated Development Environment )
คอ มการรวบรวมเครองมอตาง ๆ ทจาเปนและมโอกาสใชมากทสด มาวางไวบนหนาจอเดยว เพอ
อานวยความสะดวกการเขยนโปรแกรม
รปท2.28 แสดงหนาตางหลกของ โปรแกรม Visual Basic 6.0
รายละเอยดหนาตางหลกของ โปรแกรม Visual Basic 6.0 มดงตอไปน
หมายเลข 1 Tiltel Bar เปนสวนทแสดงชอแอพพลเคชน (Application) ชอโปรเจค(Project) และ
กลมเครองมอควบคม
หมายเลข 2 Menu Bar เปนทรวบรวมกลมเมนคาสงหลก ไดแก File , Edit , View , Project ,
Format , Debug , Run , Query , Diagram , Tools , Add-ins , Windows
และ Help ในแตละกลมคาสงยงมคาสงยอยอก
หมายเลข 3 Tool Bar เปนทรวบรวมคาสงทมโอกาสใชงานบอยทสด จะใชรปภาพแทนคาสงท
เปนขอความเพออานวยความสะดวกการ สรางแอพพลเคชน
หมายเลข 4 Form Windows เปนสวนทหนาตางปฏบตงาน จะนาอปกรณคอนโทรลตางๆใชมา
วาง เพอออกแบบหนาตางหลกของโปรแกรมทเขยน
สวพ.
มทร.สวรรณภ
ม
40
หมายเลข 5Code Windows เปนสวนทใชเขยนคาสงหรอเขยนโคด(Code) เพอควบคมการ
ทางานของแอพพลเคชน Application
หมายเลข 6Tool Box เปนทรวบรวม คอนโทรลตางๆ (Active Control ) ทจะนามาประกอบเปน
สวนของแอพพลเคชน (Application)
หมายเลข 7Project Explorer เปนสวนทใชควบคมโปรเจค จะแสดงรายละเอยดโครงสรางของ
โปรเจค(Properties)
หมายเลข 8 Properties Windows เปนสวนทกาหนดคณสมบตใหกบออบเจคตางๆ ในแอพพลเคชน
(Application)
หมายเลข 9Form Layout แสดงหนาตางของแอพพลเคชน (Application)คราวๆ เพอใหทราบ
ตาแหนงปรากฏบนจอภาพ เมอในแอพพลเคชน (Application) ทางาน
คอนโทรลชนดตางๆ (Active Control )
การเขยนโปรแกรมหรอทเรยกวาการสรางแอพพลเคชน (Application) จะใชคอนโทรล
ตางๆทแสดงอยใน Tool box ซงเปนคอนโทรลชดมาตรฐานท Visual Basic จดมาให มดงตอไปน
รปท2.29 แสดงชอคอนโทรลชนดตางๆ
สวพ.
มทร.สวรรณภ
ม
41
ตารางท2.7 แสดงรายละเอยดของคอนโทรล
ชอ รายละเอยด
Label คอนโทรลเกยวกบการแสดงขอความใหอานอยางเดยว
Frame คอนโทรลเกยวกบจดกลมคอนโทรลตางๆออกเปนกลม
Check Box คอนโทรลเกยวกบเลอกขอมล
Combo box คอนโทรลเกยวกบเลอกรายการขอมล
HScroll Bar คอนโทรลเกยวกบแถบเลอนแนวนอน
Timer คอนโทรลเกยวกบเวลา
Dirlist Box คอนโทรลเกยวกบโพลเดอร
Shape คอนโทรลเกยวกบวาดรป
Image คอนโทรลเกยวกบอานไฟลรปภาพ
Picture Box คอนโทรลเกยวกบอานไฟลรปภาพ
Text Box คอนโทรลเกยวขอความดานขอมล
Command button คอนโทรลเกยวกบปมควบคมการทางาน
Option Button คอนโทรลเกยวกบเลอกขอมลอยางใดอยางหนง
List Box คอนโทรลเกยวกบรายการขอมล
Vscroll Bar คอนโทรลเกยวกบแถบเลอนแนวตง
Drivelist Box คอนโทรลเกยวกบไดรวเกบขอมล
File List คอนโทรลเกยวกบไฟลขอมล
Line คอนโทรลเกยวกบวาดเสน
Data Control คอนโทรลเกยวกบฐานขอมล
การเพมคอนโทรล ( Active Control ) ใหกบ Tool Box
การเขยนโปรแกรมหรอการสรางแอพพลเคชนดวย Visual Basic นน ใชคอนโทรลชนด
ตางๆ ตามลกษณะงาน มาประกอบเปนแอพพลเคชน สามารถเรยกใชงานจาก Tool Bar คอนโทรล
บางตวไมปรากฏใหเหน แตทปรากฏใหเหนจะเปนคอนโทรลมาตรฐาน สาหรบคอนโทรลทไม
ปรากฏใหเหน สวนมากจะเปนคอนโทรลทมการใชงานพเศษ สามารถตดตงเพมเตมไดดงตอไปน
สวพ.
มทร.สวรรณภ
ม
42
รปท2.30 แสดงการเพมคอนโทรล
การสรางแอพพลเคชน
เมอเราเปดโปรแกรม Visual Basic จะมไดอะลอกบอกซ เชอวา New Project ซงแสดง
ประเภทของ แอพพลเคชน เพอใหผใชเลอกตามวตถประสงค ในไดอะลอกบอก มอย 3 แทบดงน
1.แทบ New จะประกอบดวยประเภทของ แอพพลเคชน
รปท 2.31 แสดงแทบNew
สวพ.
มทร.สวรรณภ
ม
43
2. แทบ Existing แสดงรายการโปรเจคทเคยมการสรางมากอน
รปท 2.32 แสดงแทบExisting
3. แทบ Recent แสดงรายการโปรเจกทเคยมการสรางมากอนและเปดมาแกไขครงลาสด
รปท2.33 แสดงแทบ Recent
สวพ.
มทร.สวรรณภ
ม
44
การกาหนดคณสมบตใหกบคอนโทรล
คอนโทรลตางๆ ของแตละคอนโทรลทนามาใชกบแอพพลเคชนนน ตองกาหนดคาพรอพ
เพอรต ( Property ) ลกษณะเฉพาะตวใหกบคอนโทรลนนดวย มเชนนนคอนโทรลนจะไมสามารถ
ทาไดตามจดประสงค
รปท2.34 แสดงสวนประกอบหนาตาง Property Windows
การเขยนคาสงหรอการเขยน Code
เปนการเขยนคาสงเพอควบคมการทางานของโทรล และรองรบการทางานในเหตการณ
ตางๆ มขนตอนดงตอไปน
ดบเบลคลกทคอนโทรลทจะเขยนโคดVisual Basic จะแสดงหนาตางสาหรบเขยนโคด
คาสงขนมาใหเราเขยนคาสงทตองการตามรปแบบของคาสงนนๆ
ขณะทางานนน ถายงมขอผดพลาด โปรแกรม Visual Basic จะแจงขอผดพลาดใหทราบ
รปท2.35 หนาตางโคด
สวพ.
มทร.สวรรณภ
ม
45
การตรวจสอบการทางานของโปรแกรม
ใหกด F5 เพอรนโปรแกรม เมอหยดหรอสนสดใหกด END เพอตรวจและรทดสอบการ
ทางานของโปรแกรมหลงจากทเราเขยนโคดคาสง ถาหากมขอผดพลาด โปรแกรมตรวจสอบ
จะแจงและแสดงจดผดพลาดตรวจพบ จะตองแกไขใหถกตองมจะทางานตอไปไมได
รปท2.36 หนาตางโปรแกรมตรวจสอบ
การสราง .EXE
ขนตอนเปนการทาใหโปรแกรมทเราเขยนขนมานน แปลงเปนภาษาเครอง เพอนาไปใชงาน
ตอไป ซงเราสามารถจะแกใขโปรแกรมได
1 เลอกคาสง Make Projects Exe… จาก เมน File
รปท2.37 หนาตางคาสง Make Projects Exe
เลอก
สวพ.
มทร.สวรรณภ
ม
46
2. จะปรากฎหนาตาง Make Project พมพชอทตองการ เปนภาษาองกฤษ เลอกทจดเกบ แลวตอบ
0K
รปท2.38 หนาตางคาสง Make Projects Exe Save in
3. เลอก
1. พมพชอ
2. เลอกทจดเกบ
สวพ.
มทร.สวรรณภ
ม
47
การบนทกขอมล
เราสามารถทาการจดเกบเพอไวใชงานหรอแกไขเพมเตมไดภายหลง โดยเลอกเมน File
Save Project และ Save Form ใหทาตามขนตอนตอไปน
รปท2.39 หนาตางคาสง Save
การตงชอคอนโทรลและออบเจกตตามคาแนะนาของไมโครซอฟท
เนองจาก Visual Basic มคอนโทรลตางๆ มากมาย โปรแกรมเมอรมกจะใชคานาหนา
(prefixs) ในการตงชอคอนโทรล ตอไปน เปนคาแนะนาของไมโครซอฟท ทคณควรใชตงชอ
คอนโทรล และออปเจคดงตารางตอไปน
1. เลอก
2. เลอก
3. เลอกทจดเกบ
4. พมพชอ
5. เลอก
7. เลอกทจดเกบ
9. เลอก
8. พมพชอ
65.
สวพ.
มทร.สวรรณภ
ม
48
ตารางท2.8 แสดงชอคอนโทรล
คอนโทรล คานาหนา (Prefixs) ตวอยาง
CheckBox chk Chk_Students
ComboBox cbo Cbo_Salary
CommandButton cmd Cmd_Exit
CommonDialog dlg Dlg_Save
Data Control dat Dat_Students
DBComboBox dbc Dbc_List
DBGrid dbg Dbg_Work1
DBListBox dbl Dbl_Display
DirListBox dir Dir_Destination
DriveListBox drv Drv_Main
FileListBox fil Fil_Input
Form Frm Frm_test
Frame fra Fra_Display
HScrollBar hsb Hsb_Color
Image img Img_Main
Label lbl Lbl_Name
Line lin Lin_Top
ListBox lst lstMouth
OptionButton opt Opt_Sex
Ole Container ole Ole_Word
PictureBox pic Pic_People
Shape shp Shp_Circle
TextBox txt Txt_Input
Timer tmr Tmr_Count
VScrollBar vsb Vsb_Height
สวพ.
มทร.สวรรณภ
ม
49
การตรวจสอบและการจดการขอผดพลาดโปรแกรม
การเขยนโปรแกรมไมวาจะเปนมอใหมหรอมออาชพ ตางกมขอผดพลาดเกดขนใน
โปรแกรม ดงนนการตรวจขอผดพลาดทเกดขนจงเปนเรองทมความจาเปน ดวยวธการอานดวย
ตวเองหรอใหคนอนกได โดยตรวจทละบรรทดไลลงมาเรอยๆจนจบโปรแกรม แนนอนวายาก
และตองเสยเวลาไปกบสวนนมาก ดงโปรแกรม Visual Basic 6 ไดจดเตรยมโปรแกรมเพอ
ตรวจสอบแกไข ทเรารจกในชอ Debugger
การเกดขอผดพลาดไมไดเกดผลเฉพาะโปรแกรมเพยงอยางเดยว แตยงเกดจากสภาพ
แวดลอมของระบบทเปลยนแปลงไปจากเดม เชน การเปลยนทจดเกบขอมล การปอนขอมลทไม
ถกตอง การเปลยนอปกรณฮารดแวร ทเกยวของ การทาลายของไวรส เปนตน ดงนนเพอความ
รวดเรวและถกตอง เราจาเปนตองใชโปรแกรมตรวจสอบความถกและแกไขขอผดพลาดทนท
ประเภทของขอผดพลาดทเกดขน
สามารถแบงประเภทของขอผดพลาดทเกดขนในการเขยนโปรแกรมดวย Visual Basic 6
ได 3 ประเภท ดงน
1. Syntax Error เกดขนจากการใชไวยกรณไมตรงกบรปแบบของภาษาทกาหนดไว
Visual Basic ซงระหวางการเขยน โคด โปรแกรม Visual Basic จะคอยตรวจสอบความถกตอง
และแจงขอผดพลาดอยตลอดเวลา และจะเสนอแนะนาวาควรจะแกใขอยางไรทถกตอง เชน
Private Sub Timer1_Timer()
Label1.Caption = Format(Now, longtime,)
End Sub
จากตวอยางขางบนน สวนทผด คอ , ทอยหลง longtime
2. Runtime Error สาเหตเกดจากสะกดผดพลาด เปนตน จะพบบอยมากสาหรบผเรมตน
โปรดระมดระวงดวย และเปนขอผดพลาดทตรวจสอบยากกวา Syntax Error เพราะตอง Run
โปรแกรมกอน จงจะเกดขอผดพลาด เชน
Private Sub Timer1_Timer()
Label1.Caption = Format(No, longtime)
End Sub
3.Logical Error สาเหตเกดจากการเขยนตรรกวทยาผด อาจเนองมาจากความผดพลาด
ทางดานแนวคดในการเขยนโปรแกรม หรอความเขาใจผดของผเขยนโปรแกรมเอง เปนตน
สวพ.
มทร.สวรรณภ
ม
50
การ ผดพลาดนตรวจสอบยากมากๆ ซงตองอาศยประสบการณเขามาชวย เพราะเวลา
ตรวจสอบโปรแกรมไมพบขอผดพลาดใดๆ ทาใหเสมอนวาโปรแกรมทมความถกตองสมบรณ แต
เมอประมวลผลไดผลลพธตองตรงกบความตองการหรอไมถกตอง
การตรวจสอบความผดพลาดดวย Debug
เครองมอทใชตรวจความผดพลาดมหลายตว แตในบทนเราจะใชเมน Debug โดยการ
ทางานไดดงน เปดเมนview
เมน Debug จะปรากฎหนาตางดงรป
รปท2.40 หนาตาง Debug
สวนประกอบเรยงตามลาดบดงน
Start ใชรนโปรแกรม
Break ใชหยดการทางานโปรแกรมชวคราวและสามารถทางานตอไดเมอ Start
เลอก Debug
สวพ.
มทร.สวรรณภ
ม
51
End ใชหยดการทางานโปรแกรม
Toggle Breakpoint ใชตงจดเบรกหรอยกเลกในโปรแกรม
Step Info ใชใหโปรแกรมทางานทละคาสงแลวหยดรอ
Step Over ใชใหโปรแกรมทางานทละคาสง รนโปรแกรมยอยแลวหยดรอ
Step Out ใชใหโปรแกรมทางานจนจบสวนโปรซเดอรปจจบนแลวหยดรอ
Local Window ใชเปดหนาตางเพอดโปรซเดอรยอยททางานอย
Immediate Window ใชเปดหนาตางเพอตรวจดคาตวแปร
Watches window ใชเปดหนาตางเฝามองตดตามการทางานของโปรแกรม
Quick Watch ใชเปดหนาตางเพอเพมตวแปรลงในหนาตาง Watches
โอเปอเรเตอร (Operator)
โอเปอเรเตอร คอ ตวปฏบตการเกยวกบ ขอมลหรอตวแปร เพอใหไดผลลพธ ออกมา ใน
การทางานกบโอเปอเรเตอร จะมลาดบการทางานกอนหลงและมลาดบความสาคญ แตกตางกน
โอเปอเรเตอร สามารถแบงออกไดเปนหลายๆประเภทดงน
- โอเปอเรเตอรสาหรบคานวณทางคณตศาสตร
- โอเปอเรเตอรสาหรบการทางานทางตรรกะ
- โอเปอเรเตอรสาหรบทางานกบ String
- โอเปอเรเตอรในการเปรยบเทยบ
คาคงท (Constant)
คอขอมลทไมมการเปลยนแปลงตลอดชวงเวลาการทางานของโปรแกรม รปแบบ
[Private|Public] Const <ชอคาคงท> [As ประเภทขอมล] = <คาทกาหนด>
ตวอยางท 1 จงกาหนดคา PI ใหมคาคงทเปน 3.14
Const PI As Double =3.14
ตวอยางท 2 จงกาหนดคา อตราภาษ ใหมคาคงทเปน 7.0
Const VatRate As Double = 7.0
ตวอยางท 3 จงกาหนดคาคงทเพอเกบคาของบรษท เปน ชอบรษท
สวพ.
มทร.สวรรณภ
ม
52
Const CompName As String = "บรษท เอบซ จากด"
การประกาศตวแปร
การประกาศตวแปรมสองแบบคอ
1.แบบ Implicit Declaration แบบนจะเปนการประกาศโดยไมใช Dim
2.แบบ Explicit Declaration เปนการประกาศตวแปรโดยใชคาสง Dim
รปแบบการประกาศตวแปร
Dim <ชอตวแปร> As <ชนดของขอมล>
ตวอยางท1 การประกาศตวแปร Integer
Dim I As Integer
ตวอยางท2 การประกาศตวแปร Byte
Dim b As Byte
ตวอยางทท3 การประกาศตวแปร Short
Dim sN as Short
ตวอยางท4 การประกาศตวแปร String
Dim MyName as String
ชนดของตวแปร
ชนดของตวแปรในวชวลเบสก มดงน
Byte มขนาด 1 Byte มชวงขอมลตงแต 0 ถง 255
Integer มขนาด 4 Byte มชวงขอมลตงแต -2,147,483,648 ถง 2,147,483,647
Long มขนาด 8 Byte มชวงขอมลตงแต -,223,372,036,854,775,808
ถง 9,223,372,036,854,775,807
Short มขนาด 2 Byte มชวงขอมลตงแต -32,768 ถง 32,767
Single มขนาด 4 Byte มชวงขอมลตงแต -3.402823E38 ถง
+17969313486231E308
Double มขนาด 8 Byte มชวงขอมลตงแต -1.79769313486231E308 ถง
+1.79769313486231E308
Char มขนาด 2 Byte เกบ Unicode Charactor
String มขนาด 2 Byte ตอ Char มขนาดตงแต 0 ถง 2 พนลาน Unicode Character
สวพ.
มทร.สวรรณภ
ม
53
Boolean มขนาด 1 Byte เกบคา True หรอ False
Decimal มขนาด 16 Byte เกบขอมลระหวาง- 9,228,162,514,264,337,593,543,950,355
ถง +79,228,162,514,264,337,593,543,950,355
Date มขนาด 8 Byte เกบคาระหวาง January 1, 0001 ถง December 31, 9999
Object มขนาด 4 Byte ใชอางถง Object ตางๆ
ชนดของขอมล
VB มชนดของขอมลทเปนพนฐาน ใหเลอกใชไดเหมาะสมตามตองการ เชน จานวนเตม
(Integer), เศษสวน (Single, Double) ขอความ (string), ตวเลขทางการเงน (Currency), คา
ทางตรรก (boolean) เปนตน ขอมลแตละชนด จะใชพนทในการเกบไมเทากน รวมถงความเรวใน
การประมวลผลกแตกตางกนดวย เชน ถาเปนตวเลข ใหคณพยายามใชขอมลชนด Integer ใหมาก
ทสด เพราะวาใชทรพยากรนอย และประมวลผลไดเรว แตกตองขนอยกบขอมลทจะเกบดวย
เนองจากขอมลชนด Integer สามารถเกบคาทอยระหวาง -32768 ถง 32767 เทานน ใหเลอกใชชนด
ของขอมลทใชทรพยากรระบบใหนอยทสด เทาทจะเปนไปได
ตารางท 2.9 แสดงชนดของขอมลเบองตน
ชนดของ
ขอมล สญลกษณ
ใชหนวย
ความจา รายละเอยด
Boolean ไมม 2 Bytes
เกบคาทางตรรก มได 2 คา คอ true (จรง) , false (เทจ) โดย
ท VB กาหนดไววา 0 มคาเทากบ false และตวเลขจานวน
เตมใดทไมเทากบ 0 มคาเทากบ true
Byte ไมม 1 Byte เกบคาเลขจานวนเตมตงแต 0-255 ซงเปนรหสแอสก
ASCII
Currency @ 8 Bytes
ใชเกบตวเลขจานวนจรง มคาระหวาง -
922,337,203,685,477.5808 ถง 922,337,203,685,477.5807
ใชสาหรบเกบตวเลขทางการเงนโดยเฉพาะ เพราะมความ
ละเอยดสง มทศนยม 4 ตาแหนง
Variant ไมม
ขนอยกบ
ชนดขอ
มลทเกบ
สามารถเกบขอมลไดทกชนด
สวพ.
มทร.สวรรณภ
ม
54
Integer % 2 Bytes เกบคาเลขจานวนเตมทมคาระหวาง -32768 ถง 32767
Long & 4 Bytes ใชเกบเลขจานวนเตมทมคาระหวาง -2,147,483,648 ถง
2,147,483,647
Single ! 4 Bytes
ใชเกบตวเลขจานวนจรง แยกเปน 2 กรณ คอ คาบวกอย
ระหวาง 1.401298E-45 ถง 3.402823E38 และคาลบอย
ระหวาง -3.402823E38 ถง -1.401298E-45
Double # 8 Bytes
ใชเกบตวเลขจานวนจรง แยกเปน 2 กรณ คอ คาบวกอย
ระหวาง 4.94065645841247E-324 ถง
1.79769313486232E308 คาลบอยระหวาง -
1.79769313486232E308 ถง -4.94065645841247E-324
String $
1 ตว/1
ไบต
(ascii)
ใชเกบตวอกษร ขอความ และตวเลข
Date ไมม 8 Bytes ใชสาหรบเกบวนเดอนป
Decimal ไมม 12 Bytes
กรณเลขจานวนเตม มคาตงแต -
79,228,162,514,264,337,593,543,950,335 ถง
+79,228,162,514,264,337,593,543,950,335
กรณเลขทศนยม มคาตงแต -
7.9228162514264337593543950335 ถง +-
7.9228162514264337593543950335
คาทนอยทสดทไมเทากบศนยทสามารถเกบไดคอ
0.0000000000000000000000000001
Object ไมม ? ใชสาหรบแทนออบเจกต หรอคอนโทรลท VB สนบสนน
ตารางท 2.10การใชสญลกษณพเศษตอทายตวแปร
ชนดของขอมล สญลกษณพเศษ
สวพ.
มทร.สวรรณภ
ม
55
Integer %
Long &
Single !
Double #
Currency @
String $
ตวแปรอารเรย (Array)
ตวแปรอารเรย เปนกลมของตวแปรทคณประกาศขนมา โดยใชชอของตวแปรแตละตว
เหมอนกน ขอแตกตางของตวแปรแตละตว จะใชคา Index ในการอางอง ตวแปรชนดนมประโยชน
ตอการเกบขอมลทคลายๆ กน เปนชดๆ โดยไมตองหวงเรองการตงชอตวแปรแตละตว เพราะมชอ
เหมอนกน ตางกนทคา Index จะทาใหการเรยกใชงานตวแปรเหลานงาย และสะดวกกวา ซงตว
แปรทประกาศเปนแบบอารเรยน แตละตวจะเรยกวา สมาชกตวท.... มรปแบบการประกาศดงน
Dim intCnt( ) As Integer
จะเหนไดวา มความคลายกบการประกาศตวแปรแบบปกต ทเพมขนมากคอ เครองหมาย
วงเลบตอทายชอตวแปร ซงหมายถง การใชงาน ตวแปรแบบอารเรย ซงสมาชกแตละตวในตวแปร
อารเรย จะตองเปนขอมลชนดเลขจานวนเตม Integer เทานน ตวแปรอารเรยม 2 ชนด คอ
1.ตวแปรอารเรยแบบสแตตก (Static Arrays) เปนอารเรยทมจานวนสมาชกทแนนอน ซง
คณตองระบจานวนสมาชก โดยใชเลขจานวนเตม เขาไปในวงเลบดวย ขอใหคณจาลอง
หนวยความจาในเครองวา เปนหองๆ ตดกน แตละหองสามารถเกบขอมลได 1 ตวอกษร VB จะจอง
จานวนหองเพอเกบขอมล ใหเทากบจานวนตวแปรอารเรยทคณระบไว
2.ตวแปรอารเรยแบบไดนามก (Dynamic Arrays) เปนตวแปรอารเรยทใชสาหรบกลม
ของตวแปร ทคณไมทราบจานวนทแนนอน หรอคณทราบแตตองการใชอารเรยแบบไดนามก เพอ
ประหยดทรพยากรระบบ โดยทตวแปรแบบอารเรย จะปรบขนาดจานวนสมาชกใหเทากบ จานวน
ตวแปรทคณตองการใชในขณะนน
การประกาศคาคงท (Constant)
ในการประกาศคาคงท ใชคาสง Const เพอสรางคาคงท โดยปกตแลว จะใชคาคงทเมอ
ทราบจานวนทแนนอน และคาดงกลาวใหมการเปลยนแปลง ถามการเปลยนแปลงคาคงทจะเกด
ขอผดพลาด มรปแบบการประกาศดงน
[Public | Private] Const constname [As type] = expression
สวพ.
มทร.สวรรณภ
ม
56
ตารางท 2.11 ความหมายของแตละสวนของการประกาศคาคงท
คาสง รายละเอยด
Public Optional หมายถง ใหคาคงทสามารถเรยกใชงานได ทกฟอรม ทกโพรซเดอร คณ
ตองประกาศในไฟลโมดลเทานน ซงจะมความหมายเชนเดยวกบ ตวแปรระดบ
Public หรอระดบโมดลนนเอง
Private Optional หมายถง ใหคาคงทสามารถใชงานไดเฉพาะในฟอรม หรอโมดลทประกาศ
เทานน ซงเปนคาปกตท VB ตงไวอยแลว
Const คาสงน หมายถงเปนการเรมตนสรางคาคงท
constname ชอคาคงท คณสามารถตงชอไดอยางอสระ โดยทไมผดกฎการตงชอของ VB
type Optional เปนการกาหนดชนดของคาคงท ซงอาจเปน Byte, Boolean, Integer, Long,
Currency, Single, Double, Date, String, หรอ Variant คณสามารถกาหนดชนด
ของคาคงท โดยใชคาสงนรวมดวยกได
expression คาคงท ทคณตองการกาหนดใหกบ constname
ตวดาเนนการใน VB 6.0 (Operators)
ตวดาเนนการ คอ การนาขอมลอยางนอยทสด 2 ตวมากระทาอยางใดอยางหนง เชน บวก
กน ลบกน เชอมตอกน เปรยบเทยบกน ทดสอบคากน เปนตน ซงสามารถแบงได 4 ประเภท ดงน
สวพ.
มทร.สวรรณภ
ม
57
1. ตวดาเนนการดานคณตศาสตร (Arithmatic Operators) เปนตวดาเนนการทใชสาหรบ
บวก ลบ คณ หาร ตวเลข
ตารางท2.12แสดงตวดาเนนการดานคณตศาสตร
ชอตวดาเนนการ ลกษณะตวดาเนนการ ตวอยาง ผลลพธ
การบวก + 15+20 35
การลบ - 20-15 5
การคณ * 5*4 20
การหาร / 9/3 3
การหารจานวน
เตม \ 10\3 3
การ Modulo Mod 10 Mod 3 1
การยกกาลง ^ 2^2 4
การเปลยน
เครองหมาย - 5 -5
2.ตวดาเนนการทางดานตรรกะ (Logical Operator)
เปนตวดาเนนการทใหผลลพธแค 2 คาเทานน คอ True และ False มกจะใชในการ
ตรวจสอบเงอนไข หรอสรางเงอนไขขนมาเพอทดสอบกรณตางๆ เสมอในการเขยนแอพพลเคชน
ตารางท2.13 แสดงตวดาเนนการทางดานตรรกะ
A B And Or Xor Eqv Imp Not A
True True True True False True True False
True False False True True False False False
False True False True True False True True
False False False False False True True True
3.ตวดาเนนการทางดานการเปรยบเทยบ (Comparison Operators)
หมายถง การนาพจนตงแต 2 พจนขนไป มาเปรยบเทยบกน เพอทดสอบเงอนไข หรอสราง
เงอนไข มกจะใชคกบตวดาเนนการทางดานตรรกะ เพอตรวจสอบเงอนไขตางๆ เสมอ
สวพ.
มทร.สวรรณภ
ม
58
ตารางท2.14 แสดงตวดาเนนการทางดานการเปรยบเทยบ
ตวดาเนนการ ชอตวดาเนนการ
< นอยกวา
> มากกวา
<= นอยกวาหรอเทากบ
>= มากกวาหรอเทากบ
= เทากบ
<> ไมเทากบ
4.ตวดาเนนการทางดานการเชอมขอความ (Concentration Operators)
ถาโดยตามหนาทแลว จะเปนการเชอมขอความ 2 ขอความเขาดวยกน แตยงมกรณยกเวนท
จะเปนการบวกกนของพจน 2 พจน เขาดวยกน ซงขนอยกบชนดของพจนทจะมากระทา
ตารางท2.15 แสดงตวดาเนนการทางดานการเชอมขอความ
ตวดาเนนการ กรณ ตวอยาง ผลลพธ
+ String + String "Visual"+"Basic 6.0" "Visual Basic 6.0"
& String & String "Visual" & "Basic 6.0" "Visual Basic 6.0"
+ String(numeric)+numeric "20"+6 26
& String(numeric)&numeric "20"+6 206
งานวจยทเกยวของ
สวพ.
มทร.สวรรณภ
ม
59
- นายประวทย เคยงผล รองอธบดกรมการจดหางาน กระทรวงแรงงาน เปดเผยผลการจด
ทะเบยนแรงงานตางดาวตงแตวนท 15 ม.ย. - 14 ก.ค.2554 ขอมล วนท 19 ก.ค.มนายจางยนขอจด
ทะเบยน 164,474 ราย จานวนแรงงานตางดาวทงสน 984,535 คน แยกเปนแรงงานพมา 643,095
คน กมพชา 238,586 คนและลาว 102,854 คนสวนมากเปนกลมอตสาหกรรมและเกษตรกรรมยน
ขอจดทะเบยน แสดงวาประเทศไทยมปญหาดานแรงงาน
- งานวจยของ ววธน ยงด (2550) เรองการสรางพลสสเหลยมแบบควบคมความกวางและ
ความสงไดผานทางพอรตขนาน พบวาสามารถควบคมแรงดนทผานพอรตขนานไดจาก 0 ถง 5
โวลต หมายความวาเราสามารถเขยนโปรแกรมควบคมแรงดนทผานพอรตขนานมาใชควบคม
อปกรณทางานตางๆได
-งานวจยของ ธงชย พนธเมธาฤทธ และคณะ (2551) การประยกตเซรามคแบบเอนทซ
สาหรบหววดและควบคมอณหภมเตาอบไฟฟาโดยใชระบบการวดทใชวชวลเบสกเปนฐาน. ใน
สวนทเกยวของพบวา ไดสรางระบบควบคมอณหภมเตาอบไฟฟา โดยใชโปรแกรมวชวลเบสกเปน
ผลสาเรจ หมายความวาโปรแกรมวชวลเบสกสามารตดตอกบอปกรณในระดบฮารดแวรได
สวพ.
มทร.สวรรณภ
ม
60
บทท3
วธการวจย
การวจยครงนเปนการวจยเชงทดลองเพอ พฒนาโปรแกรม และออกแบบการตดตง
อปกรณฮารดแวร ระบบควบคมการทางานมอเตอรเพองานเกษตรผานพอรตขนานดวยโปรแกรม
วชวลเบสก ใหสามารถทางานไดถกตองและปลอดภย โดยเลอกใชอปกรณฮารดแวรทผลต
ภายในประเทศโดย ไดดาเนนการดงน
1. ดานการพฒนาโปรแกรมควบคมระบบดวยโปรแกรม Visual basic
2. ดานอปกรณทางานเลอกใชอปกรณฮารดแวรทผลตและพฒนาในประเทศไทย
ประกอบดวย อปกรณอนเตอรเฟส อปกรณขยายสญญาณ และมอเตอรไฟฟา 220 โวลต 1/2 แรงมา
เปนตนกาลงเครองสขาว วธการดาเนนการวจย
พฒนาระบบควบคมมอเตอรเพองานเกษตรผานพอรตขนานดวยโปรแกรมวชวลเบสก
ไดดาเนนการวจยตามขนตอนดงน
1. เครองมอทใช
2. การสรางเครองมอ
3. การเกบรวบรวมขอมล
4. การวเคราะหขอมล
5. สถตทใชในการวเคราะหขอมล เครองมอทใช
1. เครองไมโครคอมพวเตอร ตดตงระบบปฏบตการWindows xp
2. โปรแกรมควบคมระบบการทางานมอเตอร ทพฒนาจากโปรแกรม Visual Basic 6
3. อปกรณอนเตอรเฟส ไดแก บอรดDB25
4. อปกรณขบแรงดนตา ไดแก บอรดขบกระแสตา แบบคอนแทค
5. อปกรณขบแรงดนสง ไดแก บอรดขบกระแสสง แบบคอนแทค
6. อปกรณทางาน ไดแกมอเตอร 220 โวลต 1/2 แรงมา เปนตนกาลงเครองสขาว
สวพ.
มทร.สวรรณภ
ม
61
การสรางเครองมอ
หลกการสรางเครองมอในการวจยพฒนาระบบควบคมมอเตอรเพองานเกษตรผานพอรต
ขนานดวยโปรแกรมวชวลเบสก ใชหลกการออกแบบของ ADDIE model โดยมขนตอนตอไปน
1.) ขนตอนวเคราะห (Analysis)
โดยจาแนกการวเคราะหดงตอไปน
1.1 วเคราะห ในสวนโปรแกรม ทเกยวกบความปลอดภย ความสะดวกตอการใช
งาน คาสงทใชควบคมฮารดแวร จดประสงคการทางานมอเตอร ตลอดจนเนอหาท
เกยวของ เปนตน
1.2 วเคราะหในสวนอปกรณฮารดแวร ทรองรบการเชอมตอกบพอรตขนาน
ชองสญญาณทใชการสงขอมล การตดตงอปกรณทเกยวของ
1.3 วเคราะหปญหาทมโอกาสเกดขนขณะพฒนาระบบและตดตงอปกรณ
ฮารดแวร
2.) ขนตอนการออกแบบ (Design)
มขนตอนดงตอไปน
2.1 ออกแบบตวโปรแกรม ตวโปรแกรมม 3 สวนทสาคญ ดงน
2.1.1 สวนเรมตนโปรแกรม ออกแบบระบบความปลอดภย ปองกนการใช
โปรแกรมโดยไมไดรบอนญาต จะใชรหสผานเปนตวอกษรจานวน 4 หลก หากเกดความผดพลาด
โปรแกรม จะแจงเตอน
2.1.2 สวนตวโปรแกรม สวนนจะเปนหนาตางใชงาน ประกอบดวย
- ระบบการตรวจสอบสถานะรจสเตอรของพอรตขนาน และกาหนดคา
กอนและหลงการใชโปรแกรม เพอปองกนไมใหอปกรณฮารดแวรทางานไดเอง
- เมน ไดแก ออกจากโปรแกรม วธใชงาน ตดตอผพฒนาระบบ
- ปมควบคมการทางาน จะออกแบบปองกนการสงงานซาซอน
2.1.3 สวนแสดงผลการทางาน หลงจากกดปมควบคมการทางานแลว จะ
แสดงผลการทางานของโปรแกรมและอปกรณฮารดแวร ดวยภาพกราฟก สามารถมองเหนชดเจน
3.) ขนตอนพฒนา( Development)
ขนตอนพฒนา มดงตอไปน
3.1 เขยนโปรแกรมพฒนาระบบควบคมมอเตอรเพองานเกษตรผานพอรตขนาน
ดวยโปรแกรม Visual Basic
3.2 โปรแกรมกราฟก ใชโปรแกรม Adode Photoshop
สวพ.
มทร.สวรรณภ
ม
62
3.3 โปรแกรมภาพเคลอนไหว ใชโปรแกรม Ulead Video Studio , Macromedia Flash
3.4 อปกรณฮารดแวรทงหมด ใชอปกรณทผลตและพฒนาในประเทศไทย
4.) ขนตอนการนาไปทดลองใชงาน (Implementation)
นาโปรแกรมระบบควบคมมอเตอรเพองานเกษตรผานพอรตขนานดวยโปรแกรม
วชวลเบสก ทพฒนาไปทดลองใชงานจรง ดวยการวดสญญาณไฟฟา ทออกจากพอรตขนาน LPT1
Address 378H Data Port Bit D0 วดดวยดจตอลมลตมเตอร และหาประสทธภาพการทางาน
ของอปกรณ
5.) ขนตอนการประเมนผล (Evaluation)
ดาเนนการดงตอไปน
5.1 ประเมนผลการทางานระบบควบคมมอเตอรเพองานเกษตรผานพอรตขนาน
ดวยโปรแกรมวชวลเบสก
5.2 นาผลประเมน หาประสทธภาพ การเกบรวบรวมขอมล
ดาเนนการดงตอไปน
1 นาระบบควบคมมอเตอรเพองานเกษตรผานพอรตขนานดวยโปรแกรมวชวลเบสก ท
พฒนาไปใชงาน ทาซาจานวน 100 ครง
2. บนทกผลการทางานของระบบควบคมมอเตอรเพองานเกษตรผานพอรตขนานดวย
โปรแกรมวชวลเบสก
การวเคราะหขอมล
ดาเนนการดงตอไปน
1. วเคราะหขอมลหาความสามารถการทางานของ โปรแกรมระบบควบคมการทางาน
มอเตอรเพองานเกษตรผานพอรตขนานดวยโปรแกรมวชวลเบสก
2. วเคราะหขอมลหาความสามารถการทางานของ อปกรณฮารดแวรระบบควบคมมอเตอร
เพองานเกษตรผานพอรตขนานดวยโปรแกรมวชวลเบสก สถตทใชในการวเคราะหขอมล
1. สถตพนฐาน
- หาคารอยละ (Percentage)
- คาเฉลย (Mean)
สวพ.
มทร.สวรรณภ
ม
63
บทท 4
ผลการวเคราะหขอมล
ผลการวเคราะหขอมลม 2 ตอนดงน
ตอนท1 หาคาเฉลย (Mean)การทางานของโปรแกรม
ตารางท4.1 ตารางบนทกผลการทดลอง
Number of
Order
DB25 Pin 2 Bit name=D0 Bit No.= 0 Signal name = Data Data378H
OUT = 1 OUT = 0
Remark Volt
for Pin2
Volt
for Driver
Hardware for
Operation
Volt
for Pin2
Volt
for Driver
Hardware for
Operation
1 2.5 5.0 0.1 0.0
2 2.5 5.0 0.1 0.0
3 2.5 5.0 0.1 0.0
4 2.5 5.0 0.1 0.0
5 2.5 5.0 0.1 0.0
6 2.5 5.0 0.1 0.0
7 2.5 5.0 0.1 0.0
8 2.5 5.0 0.1 0.0
9 2.5 5.0 0.1 0.0
10 2.5 5.0 0.1 0.0
11 2.5 5.0 0.1 0.0
12 2.5 5.0 0.1 0.0
13 2.5 5.0 0.1 0.0
14 2.5 5.0 0.1 0.0
สวพ.
มทร.สวรรณภ
ม
64
ตารางท4.1 ตารางบนทกผลการทดลอง (ตอ)
Number of
Order
DB25 Pin 2 Bit name=D0 Bit No.= 0 Signal name = Data Data378H
OUT = 1 OUT = 0
Remark Volt
for Pin2
Volt
for Driver
Hardware for
Operation
Volt
for Pin2
Volt
for Driver
Hardware for
Operation
15 2.5 5.0 0.1 0.0
16 2.5 5.0 0.1 0.0
17 2.5 5.0 0.1 0.0
18 2.5 5.0 0.1 0.0
19 2.5 5.0 0.1 0.0
20 2.5 5.0 0.1 0.0
21 2.5 5.0 0.1 0.0
22 2.5 5.0 0.1 0.0
23 2.5 5.0 0.1 0.0
24 2.5 5.0 0.1 0.0
25 2.5 5.0 0.1 0.0
26 2.5 5.0 0.1 0.0
27 2.5 5.0 0.1 0.0
28 2.5 5.0 0.1 0.0
29 2.5 5.0 0.1 0.0
30 2.5 5.0 0.1 0.0
31 2.5 5.0 0.1 0.0
32 2.5 5.0 0.1 0.0
33 2.5 5.0 0.1 0.0
34 2.5 5.0 0.1 0.0
35 2.5 5.0 0.1 0.0
36 2.5 5.0 0.1 0.0
37 2.5 5.0 0.1 0.0
38 2.5 5.0 0.1 0.0
สวพ.
มทร.สวรรณภ
ม
65
ตารางท4.1 ตารางบนทกผลการทดลอง (ตอ)
Number of
Order
DB25 Pin 2 Bit name=D0 Bit No.= 0 Signal name = Data Data378H
OUT = 1 OUT = 0
Remark Volt
for Pin2
Volt
for Driver
Hardware for
Operation
Volt
for Pin2
Volt
for Driver
Hardware for
Operation
39 2.5 5.0 0.1 0.0
40 2.5 5.0 0.1 0.0
41 2.5 5.0 0.1 0.0
42 2.5 5.0 0.1 0.0
43 2.5 5.0 0.1 0.0
44 2.5 5.0 0.1 0.0
45 2.5 5.0 0.1 0.0
46 2.5 5.0 0.1 0.0
47 2.5 5.0 0.1 0.0
48 2.5 5.0 0.1 0.0
49 2.5 5.0 0.1 0.0
50 2.5 5.0 0.1 0.0
51 2.5 5.0 0.1 0.0
52 2.5 5.0 0.1 0.0
53 2.5 5.0 0.1 0.0
54 2.5 5.0 0.1 0.0
55 2.5 5.0 0.1 0.0
56 2.5 5.0 0.1 0.0
57 2.5 5.0 0.1 0.0
58 2.5 5.0 0.1 0.0
59 2.5 5.0 0.1 0.0
60 2.5 5.0 0.1 0.0
61 2.5 5.0 0.1 0.0
62 2.5 5.0 0.1 0.0
สวพ.
มทร.สวรรณภ
ม
66
ตารางท4.1 ตารางบนทกผลการทดลอง (ตอ)
Number of
Order
DB25 Pin 2 Bit name=D0 Bit No.= 0 Signal name = Data Data378H
OUT = 1 OUT = 0
Remark Volt
for Pin2
Volt
for Driver
Hardware for
Operation
Volt
for Pin2
Volt
for Driver
Hardware for
Operation
63 2.5 5.0 0.1 0.0
64 2.5 5.0 0.1 0.0
65 2.5 5.0 0.1 0.0
66 2.5 5.0 0.1 0.0
67 2.5 5.0 0.1 0.0
68 2.5 5.0 0.1 0.0
69 2.5 5.0 0.1 0.0
70 2.5 5.0 0.1 0.0
71 2.5 5.0 0.1 0.0
72 2.5 5.0 0.1 0.0
73 2.5 5.0 0.2 0.0
74 2.5 5.0 0.2 0.0
75 2.5 5.0 0.2 0.0
76 2.5 5.0 0.2 0.0
77 2.5 5.0 0.2 0.0
78 2.5 5.0 0.2 0.0
79 2.5 5.0 0.2 0.0
80 2.5 5.0 0.2 0.0
81 2.5 5.0 0.2 0.0
82 2.5 5.0 0.2 0.0
83 2.5 5.0 0.2 0.0
84 2.5 5.0 0.2 0.0
85 2.5 5.0 0.2 0.0
86 2.5 5.0 0.2 0.0
สวพ.
มทร.สวรรณภ
ม
67
ตารางท4.1 ตารางบนทกผลการทดลอง (ตอ)
Number of
Order
DB25 Pin 2 Bit name=D0 Bit No.= 0 Signal name = Data Data378H
OUT = 1 OUT = 0
Remark Volt
for Pin2
Volt
for Driver
Hardware for
Operation
Volt
for Pin2
Volt
for Driver
Hardware for
Operation
87 2.5 5.0 0.2 0.0
88 2.5 5.0 0.2 0.0
89 2.5 5.0 0.2 0.0
90 2.5 5.0 0.2 0.0
91 2.5 5.0 0.2 0.0
92 2.5 5.0 0.2 0.0
93 2.5 5.0 0.2 0.0
94 2.5 5.0 0.2 0.0
95 2.5 5.0 0.2 0.0
96 2.5 5.0 0.2 0.0
97 2.5 5.0 0.2 0.0
98 2.5 5.0 0.2 0.0
99 2.5 5.0 0.2 0.0
100 2.5 5.0 0.2 0.0
หมายเหต = อปกรณทางานตามคาสง = อปกรณไมทางานตามคาสง
สวพ.
มทร.สวรรณภ
ม
68
สรปขอมลจากตาราง
จานานครงททดสอบ คาความถททางานถกตอง OUT=1 คาความถททางานถกตอง OUT=0
100 100 100
หาคาเฉลย (Mean)การทางานของโปรแกรม
จาก x =n
fx∑
เมอ x = คาเฉลย (Mean)
∑ fx = ผลรวมคาทงหมด
n = จานวนขอมล
แทนคา
คาเฉลย (Mean) = 100/100 = 1
ตอนท 2 หาคารอยละ (Percentage)ประสทธภาพของอปกรณการทางานของอปกรณฮารดแวร
ประสทธภาพของอปกรณ=TfcEfc
x100
เมอ Efc = ความสามารถทางานจรง (100)
Tfc = ความสามารถทางานทฤษฏ (100)
ประสทธภาพของอปกรณ = 100100
x 100
= 100 %
สรปผลทดลอง
จากผลการทดลองพบวา
1.โปรแกรมระบบควบคมและอปกรณฮารดแวรทางานมอเตอรเพองานเกษตรผานพอรต
ขนานดวยโปรแกรมวชวลเบสก สามารถทางานได ถกตองแมนยาไมมขอผดพลาดใดๆ และ
ปลอดภยตอการใชงาน
2. อปกรณฮารดแวรทผลตในเมองไทยสามารถใชงานได รบคาสงโปรแกรมไมม
ขอผดพลาดใดๆ
สวพ.
มทร.สวรรณภ
ม
69
บทท 5
สรป อภปรายผล และขอเสนอแนะ
วตถประสงค
1. พฒนาโปรแกรม ระบบควบคมการทางานมอเตอรเพองานเกษตรผานพอรตขนานดวย
โปรแกรมวชวลเบสก ใหสามารถทางานไดถกตองและปลอดภย
2. ออกแบบการตดตงอปกรณฮารดแวรระบบควบคมมอเตอรเพองานเกษตรผานพอรต
ขนานดวยโปรแกรมวชวลเบสกใหสามารถทางานไดถกตองและปลอดภย
3. เลอกใชอปกรณฮารดแวรทผลตภายในประเทศ
การดาเนนการทดลอง
1. ใชโปรแกรมและอปกรณฮารดแวรระบบควบคมมอเตอรเพองานเกษตรผานพอรตขนาน
ดวยโปรแกรมวชวลเบสก ทพฒนา ตอเปนระบบพรอมทใชงาน
2. ใชดจตอลมลมเตอร ตรวจสอบแรงดนขาสญญาณพอรตขนาน LPT1 Address 378H
Data Port Bit D0 ขณะทางาน (OUT = 1) และ หยดทางาน(OUT = 0)
3. อปกรณทางาน ใชมอเตอร ขนาด ½ แรงมา 220 โวลต เปนตนกาลงของเครองสขาว
4. แบบบนทกขอมล และทาซาจานวน 100 ครง
การวเคราะหขอมล
1.หาคาสามารถทางานไดถกตอง100 % โปรแกรม ระบบควบคมการทางานมอเตอรเพอ
งานเกษตรผานพอรตขนานดวยโปรแกรมวชวลเบสก
2. สามารถทางานไดถกตอง100 % ออกแบบการตดตงอปกรณฮารดแวรระบบควบคม
มอเตอรเพองานเกษตรผานพอรตขนานดวยโปรแกรมวชวลเบสก
ผลการวเคราะห
1. โปรแกรมระบบควบคมการทางานมอเตอรเพองานเกษตรผานพอรตขนานดวย
โปรแกรมวชวลเบสก สามารทางานได ถกตอง 100% และมความปลอดภย
2. ออกแบบการตดตงอปกรณฮารดแวรระบบควบคมมอเตอรเพองานเกษตรผานพอรต
ขนานดวยโปรแกรมวชวลเบสก สามารทางานได ถกตอง 100% และมความปลอดภย
3. อปกรณฮารดแวรทผลตในประเทศไทยสามารถนามาใชงานได
สวพ.
มทร.สวรรณภ
ม
70
อภปรายผล
ในการพฒนาระบบควบคมมอเตอรเพองานเกษตรผานพอรตขนานดวยโปรแกรมวชวล
เบสกไดมการทดลองพบวาโปรแกรมและอปกรณฮารดแวรระบบควบคมการทางานมอเตอรเพอ
งานเกษตรผานพอรตขนานดวยโปรแกรมวชวลเบสก สามารถทางานไดจรงและตรงตาม
วตถประสงคทตงไว
ขอเสนอแนะ
ขอแนะนาการทาวจยครงน
1. การเลอกใชอปกรณฮารดแวร ควรซอจากผ◌ขายทเชอถอได หลกเลยงอปกรณทมคณภาพตา
2. การทดลองครงนเลอกใช Data Port ท Bit D0 ทางานบตเดยว เมอนาไปใชงานขนาดใหญควร
เขยนโปรแกรมใหใชงานไดทกบต จะเพมจานวนการควบคมอปกรณทางานไดมากขน
3. ปจจบนคอมพวเตอรไดพฒนา พอรตรบสญญาณ USB เปนมาตรฐานประจาเครอง ใหควร
พฒนาโปรแกรม ทางานผานพอรตรบสญญาณ USB
สวพ.
มทร.สวรรณภ
ม
71
บรรณานกรม
งานวจยของ ววธน ยงด (2550) เรองการสรางพลสสเหลยมแบบควบคมความกวางและความ
สงไดผานทางพอรตขนาน พบวาสามารถควบคมแรงดนทผานพอรตขนานไดจาก 0 ถง 5
โวลต หมายความวาเราสามารถเขยนโปรแกรมควบคม แรงดนทผานพอรตขนานมาใช
ควบคมอปกรณทางานตางๆได
งานวจยของ ธงชย พนธเมธาฤทธ และคณะ (2551) การประยกตเซรามคแบบเอนทซสาหรบ
หววดและควบคมอณหภมเตาอบไฟฟาโดยใชระบบการวดทใชวชวลเบสกเปนฐาน. ใน
สวนทเกยวของพบวา ไดสรางระบบควบคมอณหภมเตาอบไฟฟา โดยใชโปรแกรมวชวล
เบสกเปนผลสาเรจ
ธงชย พนธเมธาฤทธ และคณะ. (2551). การประยกตเซรามคแบบเอนทซสาหรบหววดและควบคม
อณหภมเตาอบไฟฟาโดยใชระบบการวดทใชวชวลเบสกเปนฐาน. มหาวทยาลยทกษณ.
ววธน ยงด.(2550) . การสรางพลสสเหลยมแบบความกวางและความสงไดผานทางพอรตขนาน.
มหาวทยาลยขอนแกน.
จรายทธ แกวอาษา และคณะ. (2549) .ชดสาธตการควบคมความเรวมอเตอรไฟฟากระแสตรงแบบ
ลปปดบนจอคอมพวเตอรดวยโปรแกรม Visual Basic. สจพ
ครบญญต สมสพรรณ . เทคนคการนเตอรเฟส.ทมา http://www.utcbanyat.com/index2.html
กรกฎาคม 2554
อภชาต ภพลบ. เรมตนการเขยนโปรแกรมตดตอและควบคมฮารดแวรดวยVisual Basic. นนทบร:
อนโฟเพรส, 2546.
วสนต อาชาเดโชพลและ คณะ. คอมพวเตอรขนาดเลกและการประยกตใชงาน. กรงเทพฯ:
สานกพมพฟสกสเซนเตอร, 2544.
สข สงสวาง. ระบบการควบคมทางอตสาหกรรม. กรงเทพฯ: สานกพมพดวงกมล,2541.
สรกนยา นลพานช และคณะ. เขาใจการทางานของIBM PC. กรงเทพฯ: สานกพมพซเอดยเคชน,
2540.
สมศกด ศรขจรเกยรต. Visual Basic 6 Teach Yourself. กรงเทพฯ:ดานสทธาการพมพ, 2542.
อภชาต ภพลบ. การเขยนโปรแกรมควบคม Microcontroller ดวย C, Assembly และ Visual Basic.
นนทบร: ไอดซอนโฟดสทรบวเตอร เซนเตอร, 2552.
บณชม ศรสะอาด. การวจยเบองตน .กรงเทพฯ: สวรยาสาสน .2543.
สวพ.
มทร.สวรรณภ
ม
72
ภาคผนวก
สวพ.
มทร.สวรรณภ
ม
73
ภาคผนวก ก
สวพ.
มทร.สวรรณภ
ม
74
ตารางบนทกผลการทดลอง
Number of
Order
DB25 Pin 2 Bit name=D0 Bit No.= 0 Signal name = Data Data378H
OUT = 1 OUT = 0
Remark Volt
for Pin2
Volt
for Driver
Hardware for
Operation
Volt
for Pin2
Volt
for Driver
Hardware for
Operation
สวพ.
มทร.สวรรณภ
ม
75
ภาคผนวก ข
สวพ.
มทร.สวรรณภ
ม
76
ชดคาสงทใชพฒนาโปรแกรม
Form1 – 1
Private Sub Check1_Click()
If Check1.Value = 1 Then
If Opt_r.Value = True Then
Opt_r.Enabled = True
Opt_l.Enabled = False
Cmd_start.Enabled = True
Else
Opt_r.Enabled = False
Opt_l.Enabled = True
Cmd_start.Enabled = True
End If
Else
Cmd_start.Enabled = False
Opt_r.Enabled = True
Opt_l.Enabled = True
End If
End Sub
Private Sub Cmd_start_Click()
If Cmd_start.Caption = "&stop" Then
Cmd_start.Caption = "&start"
Cmd_start.BackColor = QBColor(12)
Img.Picture = LoadPicture("D:\motor_con\pic\u5.bmp") Check1.Enabled = True
Check1.Value = 0
Form_Load
สวพ.
มทร.สวรรณภ
ม
77
Else
Img.Picture = LoadPicture("D:\motor_con\pic\u4.bmp")
If Opt_r.Value = True Then
Cmd_start.Caption = "&stop"
Cmd_start.BackColor = QBColor(10)
Check1.Enabled = False
Out &H378, &H1 Else Rem ÁÍàµÍÃìËÁع·Ç¹à¢çÁ¹ÒÌÔ¡Ò
Cmd_start.Caption = "&stop"
Cmd_start.BackColor = QBColor(10)
Check1.Enabled = False
Out &H378, &H2
End If
End Sub
Private Sub Cmd2_Click()
End Sub
Private Sub Form_Load()
Out &H378, &H0
Cmd_start.Enabled = False
End Sub
Private Sub menu2_Click()
frm2.Show
End Sub
Private Sub menu3_Click()
frmAbout.Show
End Sub
สวพ.
มทร.สวรรณภ
ม
78
Private Sub menuexit_Click()
End
End Sub
Private Sub Opt_l_Click()
Opt_l.ForeColor = QBColor(12)
Opt_r.ForeColor = QBColor(0)
End Sub
Form1 – 2
Private Sub Opt_r_Click()
Opt_r.ForeColor = QBColor(12)
Opt_l.ForeColor = QBColor(0)
End Sub
Private Sub Timer1_Timer()
lblt.Caption = Time
End Sub
frm2 - 1
Private Sub ImageCombo1_Change()
End Sub
Private Sub Command1_Click()
frm3.Show frm2.Hide
End Sub
Private Sub VScroll1_Change()
End Sub
สวพ.
มทร.สวรรณภ
ม
79
frm3 - 1
Private Sub Command1_Click()
frm4.Show frm3.Hide
End Sub
frm4 – 1
Private Sub Command1_Click()
frm4.Hide
End Sub
frmAbout - 1 Option Explicit
' Reg Key Security Options...
Const READ_CONTROL = &H20000
Const KEY_QUERY_VALUE = &H1
Const KEY_SET_VALUE = &H2
Const KEY_CREATE_SUB_KEY = &H4
Const KEY_ENUMERATE_SUB_KEYS = &H8
Const KEY_NOTIFY = &H10
Const KEY_CREATE_LINK = &H20
Const KEY_ALL_ACCESS = KEY_QUERY_VALUE + KEY_SET_VALUE + _
KEY_CREATE_SUB_KEY + KEY_ENUMERATE_SUB_KEYS + _
KEY_NOTIFY + KEY_CREATE_LINK + READ_CONTROL
' Reg Key ROOT Types...
Const HKEY_LOCAL_MACHINE = &H80000002
Const ERROR_SUCCESS = 0
Const REG_SZ = 1 ' Unicode nul terminated string
Const REG_DWORD = 4 ' 32-bit number
สวพ.
มทร.สวรรณภ
ม
80
Const gREGKEYSYSINFOLOC = "SOFTWARE\Microsoft\Shared Tools Location" Const
gREGVALSYSINFOLOC = "MSINFO" Const gREGKEYSYSINFO =
"SOFTWARE\Microsoft\Shared Tools\MSINFO" Const gREGVALSYSINFO = "PATH"
Private Declare Function RegOpenKeyEx Lib "advapi32" Alias "RegOpenKeyExA" (ByVal hKey As
Long, ByV al lpSubKey As String, ByVal ulOptions As Long, ByVal samDesired As Long, ByRef
phkResult As Long) As Long
Private Declare Function RegQueryValueEx Lib "advapi32" Alias "RegQueryValueExA" (ByVal
hKey As Lon g, ByVal lpValueName As String, ByVal lpReserved As Long, ByRef lpType As Long,
ByVal lpData As Str ing, ByRef lpcbData As Long) As Long Private Declare Function RegCloseKey
Lib "advapi32" (ByVal hKey As Long) As Long
Private Sub cmdSysInfo_Click()
Call StartSysInfo
End Sub
Private Sub cmdOK_Click()
Unload Me
End Sub
Private Sub Form_Load()
Me.Caption = "About " & App.Title
lblVersion.Caption = "Version " & App.Major & "." & App.Minor & "." &
App.Revision
lblTitle.Caption = App.Title
End Sub
Public Sub StartSysInfo()
On Error GoTo SysInfoErr
Dim rc As Long
สวพ.
มทร.สวรรณภ
ม
81
Dim SysInfoPath As String
' Try To Get System Info Program Path\Name From Registry...
If GetKeyValue(HKEY_LOCAL_MACHINE, gREGKEYSYSINFO, gREGVALSYSINFO,
SysInfoPath) Then
' Try To Get System Info Program Path Only From Registry...
Else
If GetKeyValue(HKEY_LOCAL_MACHINE, gREGKEYSYSINFOLOC,
gREGVALSYSINFOLOC, SysInfoPath) Then ' Validate Existance Of Known 32 Bit
File Version
If (Dir(SysInfoPath & "\MSINFO32.EXE") <> "") Then SysInfoPath = SysInfoPath &
"\MSINFO32.EXE"
' Error - File Can Not Be Found...
Else
GoTo SysInfoErr
End If
' Error - Registry Entry Can Not Be Found...
Else
GoTo SysInfoErr
End If
Call Shell(SysInfoPath, vbNormalFocus)
Exit Sub
SysInfoErr: MsgBox "System Information Is Unavailable At This Time", vbOKOnly
End Sub
สวพ.
มทร.สวรรณภ
ม
82
frmAbout - 2
Public Function GetKeyValue(KeyRoot As Long, KeyName As String, SubKeyRef As String, ByRef
KeyVal A s String) As Boolean
Dim i As Long ' Loop Counter
Dim rc As Long ' Return Code
Dim hKey As Long ' Handle To An Open Registry Key
Dim hDepth As Long '
Dim KeyValType As Long ' Data Type Of A Registry Key
Dim tmpVal As String ' Tempory Storage For A Registry Key Va lue
Dim KeyValSize As Long ' Size Of Registry Key Variable
'------------------------------------------------------------
' Open RegKey Under KeyRoot {HKEY_LOCAL_MACHINE...}
'------------------------------------------------------------
rc = RegOpenKeyEx(KeyRoot, KeyName, 0, KEY_ALL_ACCESS, hKey) ' Open Registry Key
If (rc <> ERROR_SUCCESS) Then GoTo GetKeyError ' Handle Error...
tmpVal = String$(1024, 0) ' Allocate Variable Space KeyValSize = 1024 ' Mark Variable Size
'------------------------------------------------------------
' Retrieve Registry Key Value...
'------------------------------------------------------------
rc = RegQueryValueEx(hKey, SubKeyRef, 0, _
KeyValType, tmpVal, KeyValSize) ' Get/Create Key Value
If (rc <> ERROR_SUCCESS) Then GoTo GetKeyError ' Handle Errors
If (Asc(Mid(tmpVal, KeyValSize, 1)) = 0) Then ' Win Adds Null Terminated String...
tmpVal = Left(tmpVal, KeyValSize - 1) ' Null Found, Extract From String
Else ' WinNT Does NOT Null Terminate String. ..
tmpVal = Left(tmpVal, KeyValSize) ' Null Not Found, Extract String Only
End If
สวพ.
มทร.สวรรณภ
ม
83
'------------------------------------------------------------ '
Determine Key Value Type For Conversion...
'------------------------------------------------------------
Select Case KeyValType ' Search Data Types...
Case REG_SZ ' String Registry Key Data Type
KeyVal = tmpVal ' Copy String Value Case
REG_DWORD ' Double Word Registry Key Data Type
For i = Len(tmpVal) To 1 Step -1 ' Convert Each Bit
KeyVal = KeyVal + Hex(Asc(Mid(tmpVal, i, 1))) ' Build Value Char. By Char.
Next
KeyVal = Format$("&h" + KeyVal) ' Convert Double Word To String End Select
GetKeyValue = True ' Return Success
rc = RegCloseKey(hKey) ' Close Registry Key
Exit Function ' Exit
GetKeyError: ' Cleanup After An Error Has Occured...
KeyVal = "" ' Set Return Val To Empty String
GetKeyValue = False ' Return Failure
rc = RegCloseKey(hKey) ' Close Registry Key
End Function
Private Sub picIcon_Click()
End Sub
Private Sub lblDescription_Click()
End Sub
frmLogin - 1
Option Explicit Public LoginSucceeded As Boolean
สวพ.
มทร.สวรรณภ
ม
84
Private Sub cmdCancel_Click()
Me.Hide
End
End Sub
Private Sub cmdOK_Click()
If txtPassword = "1234" And txtUserName = "1234" Then '
LoginSucceeded = True
Me.Hide
Form1.Show
Else
MsgBox ".....มอเตอรกาลงทางาน.....", vbExclamation, "ÃËÑʼèÒ¹¼Ô´" '
txtPassword.SetFocus SendKeys "{Home}+{End}"
End If
End Sub
inpout - 1
'Declare Inp and Out for port I/O
#If Win32 Then
Public Declare Sub Out Lib "io.dll" Alias "PortOut" (ByVal Port
As Integer, ByVal Data As Byte)
Public Declare Function Inp Lib "io.dll" Alias "PortIn" (ByVal Port As Integer) As Byte
#Else
Declare Function Inp Lib "InpOut.DLL" (ByVal Port As Integer) As Byte Declare
Sub Out Lib "InpOut.DLL" (ByVal Port As Integer, ByVal Value As Byte)
#End If
สวพ.
มทร.สวรรณภ
ม
85
ภาคผนวก ค
สวพ.
มทร.สวรรณภ
ม
86
วธตดตงโปรแกรมและขอควรระวง
วธตดตงโปรแกรม
1. ตงคา Device Manager ทพอรตขนาน เปน LPT1 Address 378H และตรวจสอบ IRQ
ตองแสดงคาใหเหน ถาไมแสดงคาหรอเลอก LPT1 ไมได ตองไปSetup Bios เลอก Onboard
Parallel Port เปน Enabled หรอคอมพวเตอรไมรองรบพอรตขนาน
เลอก
รปภาพพนวก ค ท1 เลอก Onboard Parallel Port
2. Copyโพลเดอร Motor_con จากแผนซด ไปทไดร C:/
3. Copy ไฟล ในโพลเดอร Io_win32 จากแผนซด ไปทไดร C:/windows/systeme32
4. เปดโปรแกรม จากไฟลท เปน. EXE หรอ ไฟลท เปน Application
ขอควรระวง
เพอความปลอดภยตออปกรณฮารดแวรและผใชงาน ควรปฏบตดงตอไปน
1.กอนเปดเครองคอมพวเตอรตองแนใจวา ตางๆไดตอถกตองหมดแลว
2. เปดคอมพวเตอรกอน กอนเปดสวทซจายกระแสไฟฟาทชดระบบควบคมมอเตอร
เพราะวาขณะเปดคอมพวเตอร ระบบปฏบตการจะตรวจสอบตวเอง โดยการสงคาสง ชดหนงมาท
พอรตขนาน ถาเปดสวทซจายกระแสไฟฟาทชดระบบควบคมมอเตอร มอเตอรจะทางาน
3.ผใชงานตองจารหสผานการใชโปรแกรม รหสผานนไมสามารถเปลยนเองได
4. เพอความปลอดภยใหตรวจสอบความพรอมผทเกยวของ กอนสงใหโปรแกรมทางาน
เพราะวาเมอสงใหโปรแกรมทางานแลว อปกรณฮารดแวรทงหมดจะทางานทนท
สวพ.
มทร.สวรรณภ
ม
87
ภาคผนวก ง
สวพ.
มทร.สวรรณภ
ม
88
วธใชโปรแกรม
สวนประกอบของโปรแกรม ม2สวน
1.สวนทเกยวของกบระบบความปลอดภย เปนหนาตางแรกเมอเปดโปแกรม ผใชงานตองกรอกชอ
และรหสผาน
2. สวนทเกยวของกบโปรแกรมควบคมการทางาน
เมนคาสง
เลอกทศทางการหมนมอเตอร
ตอบยนยนการทางาน
ปมสงทางาน แสดงเวลาปจจบน
สวพ.
มทร.สวรรณภ
ม
89
ขนตอนการใชงาน
1.เปดโปรแกรมควบคมเครองสขาวขนาดเลก จากไฟลท เปน. EXE หรอ ไฟลท เปน Application
ของโพลเดอร Motor_con ทไดร C:/
2. จะแสดงหนาตางเกยวกบระบบความปลอดภย ใหผใชงานตองกรอกชอและรหสผาน (1234)
เมอกรอกเสรจใหคลก ปม OK
3. หนาตางโปรแกรมจะแสดง
4. เลอกทศทางการหมนทางานของเครองสขาว (ปกตเลอกตามเขมนาฬกา) สาหรบทวนเขม
นาฬกาใชสาหรบทาความสะอาดเครองเทานน
5. เลอกยนยนการทางาน และคลกปม กดปมทางาน
สวพ.
มทร.สวรรณภ
ม
90
6. หนาตางโปรแกรมจะแสดงการทางาน และจะปรากฏภาพ”มอเตอรกาลงทางาน” ถาตองหยดการ
ทางานคลกปมStop
7. แสดงหนาหนาตางโปรแกรมจะแสดงหยดการทางาน
สวพ.
มทร.สวรรณภ
ม
91
ภาคผนวก จ
สวพ.
มทร.สวรรณภ
ม
92
อปกรณฮารดแวร
อปกรณฮารดแวร หลายๆสวนนามาประกอบ เพอใหเปนระบบควบคม แตละอปกรณ ตาง
กทาหนาแตละดาน และทางานสมพนธกนจะขาดอปกรณใดหนงไมได
อปกรณทางาน
คอมพวเตอรและโปรแกรม
ชดควบคม
รปภาพผนวก จ ท1 แสดงอปกรณฮารดแวรระบบควบคม อปกรณฮารดแวรประกอบดวย
1.บอรดรบสญญาณพอรตขนาน ทาหนาทเชอมตอระหวางคอมพวเตอร กบอปกรณทมาตอ
พวง ดวยสายสญญาณ DB25 และมวงจรบฟเฟอร ปองกนคอมพวเตอรเสยหายเนองจากการทางาน
ผดพลาดของอปกรณตอพวง บอรดนรบแรงดน12 โวลต
สวพ.
มทร.สวรรณภ
ม
93
ขวตอสญญาณไปใชงาน ขวรบตอสญญาณ จากพอรตขนานของคอมพวเตอร
รปภาพผนวก จ ท2 บอรดรบสญญาณพอรตขนาน
รปภาพผนวก จ ท3 สายสญญาณ DB25
สวพ.
มทร.สวรรณภ
ม
94
2.บอรดเอาตพตกระแสตา ทาหนาทจายกระแสอยางเพยงพอแกความตองการของอปกรณทางาน
แตมความสามารถในการจายกระแสทระดบหนงเทานน เลอกใชแบบรเลย (Relay Driver) ขนาด
1 37แอมแปร37 รบแรงดน12 โวลต
รปภาพผนวก จ ท4 บอรดเอาตพตกระแสตา
3.บอรดเอาตพตกระแสสง ทาหนาทจายกระแสไฟฟาแรงดนสงเพอควบคมอปกรณให
ทางาน เชนมอเตอรไฟฟา โซลนอยด ขดลวดความรอน ฯ เรยกวา อปกรณการขบ ( Driver )
เลอกใชคอนแทคเตอร ขนาด 220โวลต 30 37แอมแปร37
รปภาพผนวก จ ท5 บอรดเอาตพตกระแสสง
สวพ.
มทร.สวรรณภ
ม
95
4.บอรดภาคจายแรงดนตา ใชแรงดนขนาด DC 12 โวลต
รปภาพผนวก จ ท6 บอรดภาคจายแรงดนตา 5. อปกรณทางาน ใชมอเตอร ขนาด ½ แรงมา 220 โวลต เปนตนกาลงของเครองสขาว
ขนาดเลก
รปภาพผนวก จ ท7 อปกรณทางาน มอเตอรเครองสขาว
สวพ.
มทร.สวรรณภ
ม
96
6. คอมพวเตอร มระบบปฏบตการWindows xp และพอรตขนาน
รปทภาพผนวก จ ท8 คอมพวเตอร
พอรตขนาน
รปทภาพผนวก จ ท9 แสดงพอรตขนาน
สวพ.
มทร.สวรรณภ
ม