39
1 บทที1 บทนำ บทนี้เป็นการกล่าวถึงความเป็นมาของโครงงาน แว่นตาเพื่อคนพิการทางสายตา รวมไปถึง วัตถุประสงค์ของ โครงงาน ขอบเขตของโครงงาน และขั้นตอนการดาเนินงานของโครงการรวมทั้ง รายละเอียดของโครงงาน 1.1 ควำมเป็นมำ เนื่องจากปัจจุบัน มีเทคโนโลยีที่ทันสมัย เพื่ออานวยความสะดวกกับคนทั่วไปโดยนาระบบสมองกลฝังตัวมา ประยุกต์ใช้งานเป็นตัวควบคุมการทางานของอุปกรณ์ต่างๆได้มากมาย ไมโครคอนโทรเลอร์มีขนาดเล็กสามารถสร้างเป็น บอร์ดแบบพกพาติดตัวได้และใช้พลังงานน้อยในการทางาน ความสามารถของไมโครคอนโทรเลอร์ในโครงงานนี้โดยไม่ จากัดว่าจะใช้ไมโครคอนโทรเลอร์ชนิดใดที่ใช้ในการพัฒนาที่จะนามาควบคุมการทางานของอัลตราโซนิคเซ็นเซอร์เพื่อใช้ ติดต่อกับผู้ใช้งาน โครงงานนี้ใช้การพัฒนาโปรแกรมเพื่อติดต่อกับอัลตราโซนิคเซ็นเซอร์โดยสามารถอ่านค่าระยะทางจาก เซ็นเซอร์ แล้วจึงนามาออกแบบเป็นอุปกรณ์จริง โดยมีแนวคิดว่าอยากออกแบบให้ออกมาในรูปแบบของแว่นตาดาแบบที่คนตาบอด ใช้กันทั่วไป และจะมีส่วนที่เป็นหูฟังที่เชื่อมติดกับขาของแว่นทั้ง 2 เพื่อรับฟังข้อมูลว่าเส้นทางด้านหน้ามีสิ่งกีดขวางหรือไมโดยจาเป็นต้องมีบอร์ดไมโครคอนโทรเลอร์ ARM7 ที่มีขนาดและน้าหนักไม่มากนักสาหรับพกติดตัวได้ง่ายโดยอาจสร้าง และออกแบบบอร์ดให้สามารถประจุไฟเก็บไว้ได้นานเพื่อทางานตลอดทั้งวันและสามารถถอดมาประจุไฟได้สะดวก โดย สามารถนาไปทดลองใช้งานและบันทึกผลลัพธ์ที่ได้กลับมาเพื่อทาการแก้ไขเพิ่มเติมเพื่อที่จะเป็นไปได้ในการปรับปรุงและ นาไปพัฒนาต่อสาหรับผู้ที่สนใจในงานด้านนี้และผลิตออกมาเพื่อช่วยเหลือผู้พิการได้จริงตามเป้าหมายที่ได้คาดหวังไว้

บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

Embed Size (px)

Citation preview

Page 1: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

1

บทท1 บทน ำ

บทนเปนการกลาวถงความเปนมาของโครงงาน แวนตาเพอคนพการทางสายตา รวมไปถง วตถประสงคของโครงงาน ขอบเขตของโครงงาน และขนตอนการด าเนนงานของโครงการรวมทง รายละเอยดของโครงงาน

1.1 ควำมเปนมำ เนองจากปจจบน มเทคโนโลยททนสมย เพออ านวยความสะดวกกบคนทวไปโดยน าระบบสมองกลฝงตวมา

ประยกตใชงานเปนตวควบคมการท างานของอปกรณตางๆไดมากมาย ไมโครคอนโทรเลอรมขนาดเลกสามารถสรางเปนบอรดแบบพกพาตดตวไดและใชพลงงานนอยในการท างาน ความสามารถของไมโครคอนโทรเลอรในโครงงานนโดยไมจ ากดวาจะใชไมโครคอนโทรเลอรชนดใดทใชในการพฒนาทจะน ามาควบคมการท างานของอลตราโซนคเซนเซอรเพอใชตดตอกบผใชงาน

โครงงานนใชการพฒนาโปรแกรมเพอตดตอกบอลตราโซนคเซนเซอรโดยสามารถอานคาระยะทางจาก เซนเซอรแลวจงน ามาออกแบบเปนอปกรณจรง โดยมแนวคดวาอยากออกแบบใหออกมาในรปแบบของแวนตาด าแบบทคนตาบอดใชกนทวไป และจะมสวนทเปนหฟงทเชอมตดกบขาของแวนทง 2 เพอรบฟงขอมลวาเสนทางดานหนามสงกดขวางหรอไม โดยจ าเปนตองมบอรดไมโครคอนโทรเลอร ARM7 ทมขนาดและน าหนกไมมากนกส าหรบพกตดตวไดงายโดยอาจสรางและออกแบบบอรดใหสามารถประจไฟเกบไวไดนานเพอท างานตลอดทงวนและสามารถถอดมาประจไฟไดสะดวก โดยสามารถน าไปทดลองใชงานและบนทกผลลพธทไดกลบมาเพอท าการแกไขเพมเตมเพอทจะเปนไปไดในการปรบปรงและน าไปพฒนาตอส าหรบผทสนใจในงานดานนและผลตออกมาเพอชวยเหลอผพการไดจรงตามเปาหมายทไดคาดหวงไว

Page 2: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

2

1.2 วตถประสงคของโครงงำน

1. เพอสรางอปกรณส าหรบใชวดระยะทางโดยใช Ultrasonic Sensor

2. เพอสรางเปนชดการทดลองส าหรบการเรยนร

3. เพอสรางเปนอปกรณแวนตาและเขฒขดเพอชวยเหลอผพการทางสายตา

1.3 ขอบเขตของโครงงำน

1. สามารถใชตรวจจบวตถตางๆทอยในรศมไมเกน 3 เมตร

2. ลกษณะวตถทวางควรวางตงฉากกบพนและเซนเซอร

3. ท างานไดทงหองมดและหองทมแสงสวาง

4. สภาพแวดลอมควรเปนแบบเปดโลง อณหภมหองทวไป ไมมเสยงรบกวน

5. สามารถท างานไดบนบกเทานน

6. น ามาออกแบบเปนอปกรณแวนตาและเขมขดได

1.4 ขนตอนกำรด ำเนนงำน 1. ศกษาและรวบรวมขอมล

- ARM7microcontroller

- Sensor - Ultrasonic Sensor - C programming in ARM7

2. ศกษาความตองการในดานตางๆ และความเปนไปไดในการท าโครงงาน

- ศกษาและก าหนดขอบเขตโครงงาน - วางแผนและก าหนดตารางเวลาการท างาน - ทดลองและบนทกผล

Page 3: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

3

3. ออกแบบ

- ออกแบบ Flowchart - ออกแบบ Function - ออกแบบ Sequence Diagram - ออกแบบ แวนตาและเขมขด - ออกแบบ ระบบการท างาน

4. จดท าโปรแกรม

- Flowchart - จดท า Function ทจ าเปนตองใช - เขยนโปรแกรมตามทไดออกแบบไว

5. ทดสอบการท างานของโปรแกรม

- ทดลองการท างานโดยใช function แทน Sensor จรงกอน - แกไขปรบปรงเพอใหการท างานของระบบดขน - โดยท าเอกสารประกอบการท าโครงงาน

6. สรปผลการท างาน

1.5 ประโยชนทคำดวำจะไดรบ

1. น าไปใชประยกตเปนอปกรณวดระยะทางได

2. สามารถน าไปเปนชดฝกการทดลองทใชงานกบบอรด ARM7

3. สามารถชวยเหลอผพการทางสายตาในดานการอ านวยความสะดวกในการด าเนนชวต

Page 4: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

4

1.6 สถำนทท ำโครงงำน

- หอพกนกศกษามหาวทยาลยสงขลานครนทร วทยาเขตภเกต หอง ฮารดแวรแลป

1.7 เครองมอทใชในกำรพฒนำ Hardware

- Notebook Computer Intel (R) Core™2 Duo CPU T5850 @2.16GHz , 1.00 GB of RAM - Desktop Computer Pentium (R) 4 CPU 2.80GHz 512MB of RAM - บอรดทดลอง ARM7 - Ultrasonic Sensor SRF-05

Software - Windows Vista ™ Home Basic Service Pack 1

โปรแกรมทใชงาน - EditPlus 2.12.76 - Keil uVision3 - FLIP 2.4.4

ภาษาทใช

- ภาษา C

Page 5: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

5

บทท2 ควำมรพนฐำน

การท าโปรเจคน อาศยการท างานของ microcontroller มาชวยเปนตวกลางเพอตดตออปกรณภายนอกคอ เซนตเซอรอลตราโซนค จ าเปนตองใชความรพนฐานดานการเขยนโปรแกรมเพอควบคมการท างานดวยภาษาซและสามารถใชงานโมดลดาน สญญาณ PWM TIMER CAPTURE DAC ไดจงจ าเปนตองท าความเขาใจพวก รจสเตอรทส าคญตางๆ การก าหนดคาและ ดงคามาใชงานได โดยจะกลาวถงรายละเอยดของรจสเตอรทเกยวของ

2.1 Microcontroller

2.1.1 แนะน า Microcontroller

Controller คอ ตวควบคมการท างานของอปกรณหรอขบวนการตางๆ ซงอาจท าขนมาจากวงจรไฟฟากลไก PLC ฯลฯ Micro-Controller กคอ อปกรณประเภทสารกงตวน าทรวบรวมฟงกชนการท างานตางๆ ไวภายในตวของมนเอง มขนาดเลก และสามารถเขยนโปรแกรมควบคมการท างานของอปกรณตางๆ ทเชอมตอกบตวมน โดยเนนความสมบรณภายในตวของมนเองและงายตอการน าไปใชงานหรอแกไขดดแปลง และสวนประกอบอนๆ เชน Analog to Digital Convertor, Pulse Width Modulator ฯลฯ ซงขนกบผผลตทจะใสเขาไป เพอเพมความสามารถของ Microcontroller และจดประสงคในการใชงาน ความแตกตางของ Microcontroller และ Microcomputer คอ Microcomputer นนตองการอปกรณเชอมตอภายนอก เชน หนวยความจ า I/O ฯลฯ สวน Microcontroller นนมสมบรณภายในตวของมนเอง

ดงนนบรษทตาง ๆ ไดผลตไอซ ทมหนวยประมวลผลกลางขนาด 32 บต * และเปนหนวยประมวลผลทสามารถ เขาถงขอมลในระดบบต มหนวยความจ า ขอมลพนฐานทเปนแบบแรม มขาตดตอทเปนแบบสองทศทาง สามารถใชงานโดยก าหนดใหเปนไดทงอนพต และเอาตพต มวงจรสอสารขอมลอนกรมเปนแบบ ฟลดเพลกซ รวมทงสวนของวงจรตวนบจ านวน และตวตงเวลาอยภายในตวไอซ แตโครงสรางไอซแบบนกยงจะตองมหนวยความจ าโปรแกรมภายนอก ซงท าหนาทก าหนดล าดบค าสงการท างานของไอซ จากคณสมบตดงกลาวเราจะเรยกวาไอซ ไมโครคอนโทรลเลอร

Page 6: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

6

2.1.2 สวนประกอบของMicrocontroller

รปท 2-1 microcontroller ทวไป

จากรปท 2-1 Microcontroller ทวๆ ไปประกอบดวย

- CPU (Central Processing Unit) - RAM (Random Access Memory) - EPROM/PROM/ROM (Erasable Programmable Read Only Memory) - I/O (Input/Output) - serial and parallel - Timers - Interrupt Controller

รปท 2-2โครงสราง microcontroller

Page 7: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

7

2.1.3 โครงสรางMicrocontroller LPC2148

1. ใช MCU ตระกล ARM7TDMI-S เบอร LPC2148 ของ Philips ขนาด 16/32-Bit

2. ใช Crystal 12.00 MHz โดย MCU สามารถประมวลผลดวยความเรวสงสดท 60 MHz เมอใชงานรวมกบPhaselocked Loop (PLL) ภายในตว MCU เอง

3. รองรบการโปรแกรมแบบ In-System Programming (ISP) และ In-Application Programming (IAP) ผานทาง On-Chip Boot-Loader Software ทางพอรต UART0 (RS232)

4. Power Supply ใชแรงดนไฟฟา +5VDC โดยใชขวตอแบบ CPA-2PIN จากภายนอก หรอ ใชพลงงานจาก USBPort ได (ในกรณใชกระแสไมเกน 500mA)

5. ภายใน MCU มหนวยความจ าโปรแกรมแบบ Flash ขนาด 512KB, Static RAM ขนาด 40KB 6. มวงจร USB มาตรฐาน 2.0 แบบ Full Speed ภายในตว (USB Function ม 32 End Point) 7. จ านวน GPIO สงสดถง 47 I/O Pins สามารถเชอมตอกบระบบ I/O ทเปนสญญาณ 5V ได ซงขาสญญาณ GPIO

จะมการใชงานรวมกนของ Function อนๆอกดงนวงจรสอสารอนกรมแบบ SPI จ านวน 2 ชอง และ วงจรสอสารอนกรมแบบ I2C จ านวน 2 ชองวงจร ADC ขนาด 10 Bit จ านวน 14 ชด และ วงจร DAC ขนาด 10 Bit จ านวน ชดวงจร UART แบบ Full-Duplex จ านวน 2 ชอง คอ UART-0 มาตรฐาน 4 Pin ETT เปน

8. มวงจรเชอมตอกบ Character LCD โดยใชวงจรการเชอมตอแบบ 4 บต จาก GPIO1 [25...31] พรอมวงจรปรบ ความสวางหนาจอ

9. มวงจรทดลองขนพนฐานส าหรบสนบสนนการใชงานและทดลองเรยนร ขนพนฐานอยางครบถวนจดเตรยมไวภายในบอรด (ตดตงไวเฉพาะรน CP-JR ARM7 USB-LPC2148 EXP) ซง ไดแกLED Output แบบ Sink Current ส าหรบแสดงสถานะของ Output จ านวน 4 ชดPush Button Switch แบบ Active Logic “0” ส าหรบทดสอบ Input Logic จ านวน 4 ชดVolume ปรบคาแรงดน 0-3.3V ส าหรบทดสอบการท างานของ ADC จ านวน 4 ชดก าเนดสญญาณเสยง Mini Speaker ส าหรบทดสอบการเสยงแบบตางๆ จ านวน 1 ชดแผงตอวงจร Project Board รน AD-100 ขนาด 360 จด ส าหรบเปนพนทตอทดลองวงจรขนาดเลกๆ เพอใชงานรวมกบ CPU ไดอยางอสระจดตอแหลงจายไฟ +3.3V และ GND ส าหรบเชอมตอไปยงวงจรภายนอกอนๆ

10. ทนอณหภมใชงานระหวาง -40 to +85°C ดงแสดงดงรปท 2-3

รปท 2-3 port microcontroller ARM 7

Page 8: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

8

2.1.4 Timer/Counter

โครงสรางของสถาปตยกรรมแบบ ARM7 ปกตแลวจะม 2 Timer/Counter คอ Timer 0 และ Timer 1 ในการใชงาน เราสามารถก าหนดผานทาง register ไดวาจะใหเปน Timer หรอ Counter

- Counter คอการนบจ านวนสญญาณ pulse จากภายนอกตวไมโครคอนโทรลเลอร

- Capture คอการจบสญญาณทรบเขามาจากภายนอกในรประดบขอบสญญาณ

- Timer คอ เปนการนบจ านวนสญญาณ pulse จากภายในตวไมโครคอนโทรลเลอร เมอนบจ านวนพลส

- ครบตามทก าหนดไว จะมการแสดงออกมาทตวบตแฟลกโอเวอรโฟลวของไทเมอร

Registers ทเกยวของ

- TCR: Timer Control Register

- Reset, enable/disable ตว timer

- CTCR: Count Control Register

ก าาหนด mode timer/counter – capture mode

- TC, PR, PC: Counter และ Presale

- MCR, CCR: Match/Capture Control Register

- EMR: External Match Register

- ควบคม external match pin

- MR [0...3]/CR [0...3]: Match/Capture Register

Page 9: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

9

2.1.5 โครงสรางขนตอนการท างานของ interrupts timer/counter

รปท 2-4 โมดลภายใน Microcontroller ARM7

จากรปท 2-4 Interrupt for LPC2xxx Peripheral ทมบน LPC2148 เกอบทงหมด สามารถใชinterrupt ได

- Watchdog - Timer - UART - I2C - ADC - USB

เนองจากมอปกรณจ านวนมาก ทตองการใช interrupt ดงนนจงตองม Vector Interrupt Controller ชวย

Page 10: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

10

ตาราง 2-1 Vector Interrupt Controller

Bit 31 30 29 28 27 26 25 24

Symbol - - - - - - - -

Access WO WO WO WO WO WO WO WO

Bit 23 22 21 20 19 18 17 16

15Symbol - USB AD1 BOD 12C1 AD0 EINT3 EINT2

Access WO WO WO WO WO WO WO WO

Bit 15 14 13 12 11 10 9 8

Symbol EINT1 EINT2 RTC PLL SPI1/SSP SPI0 I2CO PWM0

Access WO WO WO WO WO WO WO WO

Bit 7 6 5 4 3 2 1 0

Symbol UART1 UART0 TIMER1 TIMER0 ARMCore1 ARMCore0 - WDT

Access WO WO WO WO WO WO WO WO

จากตารางท 2-1 การใชงาน จะตองควบคมจากตวอปกรณทจะใช interrupt เอง และจากตว VIC ดวย

เชนTimer กจะตองไป Config Register

- TxIR (T0IR, T1IR) – Interrupt Controller

- TxMCR – Match Control Register หรอ

- TxCCR – Capture Control Register

- ขนอยกบวาจะใช interrupt จาก Timer Match หรอ Timer Capture

Page 11: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

11

ตาราง 2-2 Timer Interrupt Related Registers

Generic Name Description Access

IR Interrupt Register. The IR can be written to clear interrupts. The IR can be read to identify which of eight possible interrupt sources are pending.

R/W

MCR Match Control Register. The MCR is used to control If and interrupt is generate and if the TC is reset when a math occurs.

R/W

MR0 Match Register 0. MR0 can be enabled through the MCR to reset the TC, stop both the TC and PC ,and / or generate an interrupt every time MR0 matches the TC.

R/W

CCR Capture Control Register. The CCR controls which edges of the capture inputs are used to load the Capture Registers and whether or not .

R/W

จากตารางท 2-2 Timer Counter

- บนทกเวลา โดยใชสญญาณควบคมจากภายนอก e.g. นาฬ กาจบเวลา

- ม 4 x 32-bit capture register

เมอมสญญาณเขาจาก capture pin จะ copy คาของ counter ไวใน capture register เลอก capture

ไดทง rising edge/falling edge หรอทงคเลอกวาจะใหเกด interrupt ขนไดเมอมการ capture

Page 12: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

12

2.2 หลกกำรท ำงำนของ Sensor ในวงจรอเลกทรอนกสการตรวจวดสภาวะแวดลอมทอยรอบๆ จะใชอปกรณทเรยกวาตวตรวจจบหรอเซนเซอร

(Sensors) ส าหรบมนษยนนการตรวจจบหลกๆ คอ รป รส กลนเสยง และสมผส ซงการทจะตรวจจบใหครบทง 5 องคประกอบ จะตองมการตรวจวดทตางกน เชน ใชตาส าหรบการตรวจจบรป ใชลนส าหรบการตรวจจบรส เปนตน ส าหรบวงจรอเลกทรอนกส ตวตรวจจบจะมหลากหลายประเภทเพอใหการตรวจจบเปนไปไดส าหรบทกสภาวะ โดยแบงตามประสาทสมผสของมนษยไดดงน

1. ตรวจตรวจจบแบสมผส เปนตวตรวจจบทตรวจจบการกระทบของวตถ เชนสวตซแบบตางๆ เปนตน 2. ตวตรวจจบดวยแสง เปนตวตรวจจบทใหสญญาณเอาทพทเมอไดรบแสง เชนLDR เปนตน 3. ตวตรวจจบดวยเสยง เปนตวตรวจจบใหสญญาณเอาทพทเมอไดรบคลนความถเสยง เชน ไมโครโฟน 4. ตวตรวจจบคาความเปนกรด ดาง เปนตวตรวจจบทใชการสรางกระแสไฟฟาจากความเปนกรด-ดาง 5. ตวตรวจจบแบบอออน เปนตวตรวจจบทท างานโดยการตรวจสอบประจอออนเชน ตวตรวจจบแกส

รปท 2-5 ตวตรวจจบแบบหนาสมผส

Page 13: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

13

2.3 Ultrasonic Sensor

รปแบบตาง ๆ ของอลตราโซนคเซนเซอรประกอบดวย ตวตรวจจบดวยคลนอลตราโซนค ชดสงสญญาณ ชดประมวลผล และชดเอาทพท ดงแสดงในรปท 2-6

รปท 2.3-1 หลกการท างานของอลตราโซนค

รปท 2-6 ขนตอนการท างานของอลตราโซนคเซนเซอร

มกจะใชเปนภาครบ และ ภาคสง อาจมระบบซงประกอบดวยสวนหลก ๆ แยกกนอย 2 สวนในระหวางการท างาน เซนเซอรจะท าการสงสญญาณเสยงซงเรยกวา “ซาวดพารเซลส” (Sound parcels) ใหขบวนการทางอเลกทรอนกส ของเวลาท างานไปเรอย ๆ จนกระทงมการ รบการสะทอนครงแรกเกดขน

ส าหรบการท างานเปนวงจรของอลตราโซนคเซนเซอร จะสงผานคลนพลซเสยงทชวงเวลาสม าเสมอ หรอชวงเวลาทเปลยนแปลง คลนเสยงทปลอยออกไปจะถกสะทอนไดโดยวตถทเหมาะสม โดยเซนเซอร และระบบการท างานจะรบการสะทอนของคลนเสยงทสะทอนกลบมา (ดงแสดงในรป)ความกวางของคลนพลซของเสยงอยในชวง 2.-200 ไมโครเซค ดงแสดงในรปท 2-7

รปท 2-7 อลตราโซนคเซนเซอร วงจรสงผาน/รบ

Objects

Ultrasonic

Sensor Process Distance

Page 14: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

14

เวลาในการเดนทางของคลนพลซของคลนเสยงเปนการวดระยะหางจากวตถ ทงนขนอยกบชนดของเซนเซอร ระยะหางนน าไปแสดงในรปของ สญญาอนาลอก (Analague Signal) (เชน 0-20 mA) สญญาณลอจก (Logic Signal) (เชน สญญาณลอจก 8 big) ตลอดทง ซเรยลอนเตอรเฟส (Serial Interface) (RS232) หรอการเปรยบเทยบกบคาอางองในรปของสวสซพลซทเรยกวา ไทมเฟรม (Time Frame) เนองจากขบวนการด าเนนไปตามเวลาทคลนสะทอนเดนทาง ไมใชเปนไปตามความเขมของคลนสะทอน จงจดไดวาอลตราโซนคเซนเซอร มขอดเหนอกวาเซนเซอรแบบออปตคอล (Optical Sensor) เวลาทคลนสะทอนการเดนทางจะ ท าใหขบวนการด าเนนโดยไมขนกบความเขมของคลนสะทอน ตราบเทาทวตถยงคงสะทอนคลนทสามารถตรวจจบไดออกมา ดงนนคณลกษณะการสวทซไมเปลยนไป แมในสภาวะทการสะทอนเปนไปอยางไมดคลนสะทอนทออนจะมผลตอความถกตองในการตรวจจบวตถ ซงอาจท าใหไมสามาถท าการตรวจจบวตถไดเลยความเรวทเปลยนไปของคลนพลซของเสยง มผลกระทบตอพสย การท างานของสวทช (ระยะทาง) โดยตรงเซนเซอรท างานดวยวงจรเวลาทคงท (เชน t = 20 ms) จะสงคลนเสยงออกมาอยางสม าเสมอ ดงแสดงในรปท 2-8 ดงนนวงจรเวลาจะเปนตวก าหนดชวงและวงจรการท างานของสวตซของเซนเซอร

รปท 2-8 อลตราโซนคเซนเซอร วงจรเวลาคงท

ยกตวอยาง เชนคลนเสยงทมความเรว v = 340 m/s (20’”c) ในชวงเวลา t= 20 ms (50 Hz) จะเดนทาง S= Vxt = 6.8 m เนองจากระยะหางระหวางเซนเซอร และวตถทไดจากการท างานของเซนเซอร คดทไปและกลบจงไดระยะทางจรงสงสดส าหรบวงจรเวลานเปน 3.4 m แอมปลจดของสวนของคลนเสยงและซทวต (Sensitivity) ของตวรบตองมการพจารณาเลอกใช เพอใหคลนสะทอนทเดนทางมาถงหลงจากเลยเวลาของวงจรเวลาท

ก าหนดไปแลวจะไมไดรบการตรวจจบเนองจากคลนสะทอนนนออนมากซงสญญาณคลนนจะท าใหเซนเซอรสวทส มการท างานผดพลาดหรอใหขอมลทผด เซนเซอรแบบ อนาลอก (Analog Sensor) เพอใหการตรวจจบวตถเปนไปอยางถกตอง วตถตองอยนงเปนเวลาทพอเพยงส าหรบส าหรบสะทอนอยางนอย 1 สวน ของคลนเสยงภายในขอบเขตทเซนเซอรจะท างานไดรอบมากทสดของการสวทซ ซงจะเปลยนแปลงกบอตราสวนของวตถตอทวาง และจะพจารณาใหมคานอยกวารอบของความถทจดน เวลาทขยายจะสนสดระหวางการสงผานของพลซ และการรบคลนสะทอนแรกจะถกน าไปใชวดส าหรบวงจรเวลา เมอเวลาด าเนนไปเทากบเวลาทคลน ตองการความถต าในทางตรงกนขาม ความถของวงจรจะเพมขนเมอวตถเขาใกลเซนเซอรท างานใหวงจรเวลาสนลง และพลงงานทสงออกไปสามารถปรบในชวงเวลาของคลนเสยงทปลอยไป เวลาทเพมขนของแอมปลจดเมอมการสวทซ

Transmitted Echo Transmitted

Pulse Pulse

Page 15: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

15

รปท 2-9 อลตราโซนคเซนเซอร , วงจรทเปลยนแปลงได

ทรานซดวเซอรจะถกใชส าหรบพลงงานทสงออกไป ดงแสดงในรปท 2-9 ดงนนคลนสะทอนเบองหลงสามารถควบคมไดดวย การลดพลงงานในการสงผานวตถทอยใกลเซนเซอร

รปท 2-10 อลตราโซนคเซนเซอรทรานซดวเซอรแบบชนสวนการอมพลซ (Impulse)

การลดสญญาณรบกวน และสภาวะการท างาน

ผลทเกดจากคลนรบกวน และการสอดแทรกในการประยกตใชอลตราโซนคเซนเซอรคอการตรวจจบวตถไดแตระยะทใกลกบเซนเซอร และไมสามารถตรวจจบวตถทมการสะทอนไดไมด เนองจากความจรงทวา คลนอลตราโซนคจะสะทอนไดจากวตถเกอบทกชนด และงายตอการเบยงเบน วตถเหลานนจะท าใหสวทซเปด-ปด เมอเขาใกลบรเวณทเซนเซอรสามารถตรวจจบได ดงกราฟท านายคณลกษณะของเซนเซอร ดงแสดงในรปท 2-10

Cycle Time

Pulse Run Time Echo Pulse Run Time

u

t

Page 16: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

16

รปท 2-11 อลตราโซนคเซนเซอร , คณลกษณะการตรวจจบ

เพอหาคณลกษณะของวตถชนดตาง ๆ จะวางในต าแหนงของวตถในระยะหางเทา ๆ กนทมมตงฉากกบแนวแกนของเซนเซอร จดทสวทชท างานกจะถกก าหนดขน ตวอยางวสดทใชคอ ดงแสดงในรปท 2-11

A : แผนจานขนาด 700 x 700 mm. ขอบเขตทอยดานนอกสวนโคงชนนโดยปกตจะไมมวตถตรวจจบได

B : แผนจานขนาด 100 x 100 mm. แผนจานอางองมาตรฐานก าหนดโดยขอมลทางเทคนคทวไป

C : ทอพลาสตก ขนาดเสนผาศนยกลาง 160 mm. คลมดวยสกหลาด ใชเปนตวแทนมาตรฐาน

D : แทนไม ขนาดเสนผาศนยกลาง 25 mm. วสดทดสอบ เชนระยะความปลอดภยยอนกลบในยานพาหนะ

เพอใหปราศจากปญหาในการท างาน จะไมมวสดอนใดทไมใชเปาหมายในขอบเขตนอกสด ในทางกลบกนวตถเปาหมายตองอยภายในบรเวณพนททสามารถตรวจจบไดทงขนาด รปราง เพอปองกนปญหาการตรวจจบคลนเสยง พนผวของวตถควรมขนาดใหญเทาทจะเปนไดราบเรยบ และมมมเอยงไมเกน 3 นว กบแกนของเซนเซอร ดงแสดงในรปท 2-12จากขอก าหนดดงกลาว เมอท าการตรวจจบวตถทรงกลม หรอวตถผวไมเรยบ (ของเหลว, ของผสม) กจะเกดปญหาขน

รปท 2-12 อลตราโซนคเซนเซอร , พนผวตรง

Page 17: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

17

รปท 2-13 อลตราโซนคเซนเซอร , การตรวจจบสงของ

อลตราซาวดสามารถน ามาเบยงเบนดวยตวสะทอนอยางงาย ทท าจากวสดใด ๆ ดงแสดงในรปท 2-13 พนทตรวจจบยงคงเทาเดม ท าใหใชกบตวสะทอนขนาดใหญไดโดยใชตวเบยงเบนไมเกน 2 ตว ตดตงภายในทางเดนของคลนเสยงในแนวทางเดนตงฉากอยางถกตอง

รปท 2-14 อลตราโซนคเซนเซอร , การเบยงเบนคลนเสยง

ดวยวธนสามารถน าไปใชปองกนปองกนเซนเซอร จากการใชงานในสงแวดลอมทเปนอนตรายตอเซนเซอรและท าใหลดคลนสะทอนทไมตองการจากวตถ การรวมคลนเสยงผานมานกน หรอทอโดยปกตไมสามารถท าได เนองจากการหกเหของแสง บนขอบ และก าแพง เพอหลกเลยงการสอดแทรกจากเครองมอ ดงแสดงในรปท 2-14

ทใหก าเนดคลนเสยงอนอน ๆ สญญาณทรบไดจะถกทดสอบความถในตวเอง วธการนไมสามารถท าใหส าเรจไดเมอใชเซนเซอรชนดเดยวกน (ทรานซดวเซอรและความถชนดเดยวกน) หรอมยานรบกวนกวาง (เชน ในอากาศอด) สอดแทรกกน เพอหลกเลยงผลกระทบระหวางเซนเซอรจะตองมการตดตงทระยะปลอดภย คลนรบกวนกบแอมปลจดขนาดใหญ สามารถปดกนเซนเซอรไมใหรบคลนสะทอนทออนกวาคลนรบกวนได

Page 18: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

18

เซนเซอรบางชนดแกปญหาการสอดแทรกน โดยสญญาณเตอนทเอาทพททแยกตางหาก เพอเปนการชดเชยการเปลยนแปลงความเรวของเสยงจากอณหภมทขน ๆ ลง ๆ เซนเซอรบางชนดจงรวมเอาเซนเซอรอณหภมเขาไปดวย โดยจะท าการวดอณหภมบรเวณเซนเซอร และวตถ (ระยะสงสด 6 m) ขบวนการหลาย ๆ ขบวนการของสญญาณทชวยในการเกดคลนรบกวนทเกดขนเปนครงคราว เชน คลนรบกวนเนองจากการเคลอนทของอากาศ หรอคลนรบกวน กบคลนอลตราซาวดทมองคประกอบมาก (ในอากาศ , เครองจกรกล) ดวยวธการนเอาทพททไดจากการเซนเซอรจะถกกระตนเมอจ านวนของคลนสะทอนมความเขมขนเดยวกน และในการเดนทางเทากนไดถกรบเอาไว ขอเสยคอ ความถของการท างานคอนขางลดนอยลงเมอท าการตรวจจบวตถทเคลอนทผานอยางรวดเรวผานจดทท ามมตงฉากกบแกนของเซนเซอร ในกรณนความเรวของวตถทยอมใหมไดก าหนดมาจากขนาดของวตถ และระยะหางจากเซนเซอร

รปท 2-15 อลตราโซนคเซนเซอร, ความเรวของวตถทยอมใหได

หากมวตถมรปรางเปนสเหลยมจตรสขนาดความยาวของแตละดานเทากบ 100 mm. (แผนจานอางองมาตรฐานสวนโคง B)ในระยะหาง 2 m จากเซนเซอรพรอมกบยานความไว 3 m นนตองการตรวจจบดวยเซนเซอร จะตองมเวลาปฎกรยา 280 ms การพจารณาประยกตใชงานดงน ระยะเวลาชองวตถในการตรวจจบ ดงแสดงในรปท 2-15 คอ 1.24 m. เวลานอยทสดทภายในชวงการท างานของเซนเซอร (เวลาปฎกรยา) : 280 ms. ความเรวสงสด v = s/t = 1240 mm/ 280 ms คอ 4.43 m/s เพอทจะตรวจจบแทงไมทมขนาดเสนผาศนยกลาง 25 mm. (สวนโคง D) ไดในระยะ 3 m เราใชการค านวณดงน s = 0.19 m , t = 280 ms , v = 0.68 m/s

Page 19: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

19

- SRF -05 Ultrasoni 2.4 Ultrasonic Sensor

SRF05 เปนแผงวงจรทสามารถตรวจจบ และ วดระยะทางได ดวยคลนอลตราโซนคทมความเทยงตรงสง โดยหลกการการท างาน คอ SRF05 จะท าการสงสญญาณคลนอลตราโซนคออกไป แลวจะท าการวดระยะเวลาทมสญญาณสะทอนตอบกลบมา ซงเอาตพตทไดจาก SRF05 จะอยในรปของความกวางพลส โดยมความสมพนธกบระยะทางของวตถทตรวจจบได ดงนน เราสามารถทจะน าความกวางพลสทไดนนไปท าการค านวณคาทางคณตศาสตร เพอหาระยะทางของวตถทตรวจจบได ดงแสดงในรปท 2-6

\

รปท 2-16 หลกการการตรวจจบวตถของ SRF05

ขาตอใชงานของ SRF05 มขาตอส าหรบใชงานอยทงหมด 5 ขา ดงแสดงในรปท 2-17 สามารถอธบายหนาทของแตละขาไดดงน

- ขาไฟเลยง (+5 V) เปนขาส าหรบตอไฟเลยงให SRF05

- ขา Echo Pulse Output (ECHO) เปนขาเอาตพตส าหรบสงสญญาณพลสออกจาก SFR05

- ขา Trigger Pulse Input (TRIGGER) เปนขาอนพตส าหรบรบสญญาณพลสทมความกวาง 10 us

- ขา MODE เปนขาส าหรบเลอกรปแบบการตดตอ SRF05

- ปลอยลอยไว (NC) = เลอกใหตดตอแบบ 2 สญญาณ ผานขา ECHO และขา TRIGGER

- ตอลงกราวด = เลอกใหตดตอแบบ 1 สญญาณ ผานขา TRIGGER

- ขา GND เปนขาส าหรบตอลงกราวด

Page 20: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

20

รปท 2-17 แสดงขาสญญาณของ SRF05 (Top view)

รปท 2-18 ไดอะแกรมเวลาแสดงสญญาณทสงไปยง SRF05 แบบ2สญญาณ

รปท 2-19 ไดอะแกรมเวลาแสดงสญญาณทสงไปยง SRF05 แบบหนงสญญาณ

Page 21: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

21

พจารณาจากไดอะแกรมจากรปท 2-17 รปท 2-19 จะเหนวา SRF05 มการตอบกลบสญญาณทเปนผลลพธไมแตกตางกน แตจะมความแตกตางกนทขาทไดรบการตอบกลบเทานน ซงในการทดลองน จะเปรยบเสมอนเปนการ ตดตอ SRF05 แบบ 2 สญญาณ หลงจากท าการวเคราะห แลวสามารถอธบายการท างานของ SRF05 ไดดงน

ท าการจายพลสทมความกวาง 10 us ใหกบขา TRIGGER ของ SRF05 เพอกระตนการสรางคลนอลตราโซนก

- SRF05 จะท าการสงสญญาณคลนอลตราโซนกออกไป

- SRF05 จะท าการวดระยะเวลาทมสญญาณพลสสะทอนตอบกลบมาทขา ECHO

- น าความกวางพลสทไดไปท าการค านวณคาทางคณตศาสตรหาระยะทางของวตถทตรวจจบได

- ซงในการทดลองนเราจะท าการจ าลองเฉพาะสวนทเราสนใจ

Concept

- ทดลองสรางสญญาณพลสจากฟงกชน

ถาความกวางของพลสสะทอน ทไดมความกวางระหวาง 0.1 ms ถง 25 ms แลว แสดงวาตรวจจบพบวตถและ ถาความกวางของพลสสะทอน ทไดมความกวางมากกวา 30 ms แลว แสดงวาตรวจจบไมพบวตถซงท าการวเคราะหจากทง 2 สวน นแลว จะไดสมการดงน

0.1 ms <= พลสสะทอน <= 30 ms ----- [สมการท 1.1]

หรอ

100 us <= พลสสะทอน <= 30000 us ----- [สมการท 1.2]

จากสตร 6 in = 1000 us

จะได 1 in = (1000/6) us

ดงนน จากสมการท 1.2 จะไดสมการดงน

0.6 in <= ระยะทางทค านวณไดจากพลสสะทอน <= 180 in ----- [สมการท 1.3]

หรอ (จากสตร 0.3937 in = 1 cm)

1.5230 cm <= ระยะทางทค านวณไดจากพลสสะทอน <= 457.2009 cm ----- [สมการท 1.4]

Page 22: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

22

วเคราะหหาวธการทจะท าการวดคาของสญญาณพลสสะทอน ใหไดคาละเอยดทสง และ ผดพลาดนอยทสดซงตอมาไดท าการน า Timer/Counter เขามาใชเพอจบระยะของสญญาณพลล แตกยงคงไดผลลพธทผดพลาดจากความเปนจรงคอนขางมาก และ ท างานไดไมทนตามตองการ อกเชนกนและหลงจากทไดเรยน และ ท าการศกษาเพมเตม ในเรองของระบบ Interrupt พบวา ถาเราตองการ ใหท าในสงทมความส าคญ หรอ สงทเราตองการใหกระโดดไปท าในทนททนใด นน เราจ าเปนตองใชระบบ Interrupt เขามาชวยในการท างาน ซงในการทดลองนเราจะน าระบบ Interrupt เขามาชวยในการท างานของ Timer/Counter เพอเพมประสทธภาพในการจบระยะของสญญาณพลลน าระยะของสญญาณพลลมาท าการค านวณทางคณตศาสตรเพอหาระยะทางของวตถทตรวจจบได

2.5 ภำษำ C ส ำหรบ Microcontroller LPC2148

2.5.1 timer/counter

ไมโครคอนโทรลเลอร ARM7 มไทมเมอร/เคานเตอรขนาด 16 บต 2 ตว คอไทมเมอร 0 และไทมเมอร 1 สวนในไมโครคอนโทรลเลอรอนกรม 8052 ซงออกมาทหลงจะมไทมเมอร/เคานเตอร 3 ตว นนคอมไทมเมอร 2 เพมขนมา ไทมเมอร/เคานเตอรแตละตวสามารถเลอกใชงานเปนไทมเมอร หรอเคานเตอรกได และท างานไดอยางเปนอสระตอกน ในการท างานเปนไทมเมอรนนจะใชหลกการเพมคารจสเตอรไทมเมอร ทก ๆ Machine Cycle ซงมชวงเทากบ 12 คาบสญญาณนาฬกาทถกสรางขนจากครสตอลทตอใชงานใหกบไมโครคอนโทรลเลอรนนเอง ส าหรบบทความนจะอธบายรายละเอยด และตวอยางการใชงานไทมเมอร 0 และ 1 เทานน ส าหรบ ไทมเมอร 2 สามารถอานรายละเอยดไดทบทความการใชพอรตอนกรมของไมโครคอนโทรลเลอร ARM7 ครบในการใชงานไทมเมอร 0 และ 1 ของ ARM7 นน เราตองรจก รจสเตอรทส าคญทใชควบคมการท างานของไทมเมอรเสยกอน ซงมรายละเอยดดงน

2.5.1.1 Timer Registers

- TCR : Timer Control Register ท าหนาท Reset, enable/disable ตว timer

- CTCR : Count Control Register ท าหนาท ก าหนด mode การใชงาน timer/counter – capture mode

- TC, PR, PC : Counter และ Prescaler ท าหนาท ตงเวลาการท างานและจบเวลา

Page 23: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

23

ตาราง 2-3 รจสเตอร TIMER/COUNTER Generic Name

Description Access Reset value

TIMER/Counter

Address & Name IR Interrupt Register. The IR can be written

to clear interrupt. R/W 0 0xE00 4000

T0IR

TCR Timer Control Register. The TCR is used to control the Timer Counter function. The Timer

Counter can be disable reset the TCR.

R/W 0 0xE00 4004

T0TCR

TC Timer Counter. The 32-bit TC is incremented every PR+1 cycles of PCLK.

R/W 0 0xE00 4008

T0TC

PR Prescale Register.The Prescale Counter is equal to this value, the next clock increments TC and

clears the PC.

R/W 0 0xE00 400C

T0PR

PC Prescale Counter. The 32-bit PC is counter which is incremented to the value stored in PR.

When the value in PR is reached.

R/W 0 0xE00 4010

T0PC

2.5.1.2 Capture Register

- TxTC ท าหนาท บนทกเวลา โดยใชสญญาณควบคมจากภายนอก

- TxCCR ท าหนาท ควบคมการใชงาน ม 4 x 32-bit capture registerโดย เมอมสญญาณเขาจาก capture pin

- copy คาของcounter ไวใน capture registerโดยสามารถตงเลอก capture ไดทง rising edge/falling edge หรอทงค

- และยงเลอกวาจะใหเกด interrupt ขน ไดเมอมการ capture

- CRxท าหนาทโหลดคา TC เมอการ CAPTURE สญญาณไดมาเกบไวเพอน าไปใชงานตอ

Page 24: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

24

ตาราง 2-4 CAPTURE PIN Pin Type Description

CAP0.3…0 CAP1.3…0

Input Capture Signals- A transition on a capture pin can be configured to load one of the Capture Registers with the value in the Timer Counter and optionally generate an interrupt. Capture functionality can be selected from a number of pins. When more than one pin is selected for a Capture input on a single TIMER0/1 channel , the pin with the lowest Port number is used.

- CAP0.0 มทงหมด 3 pin คอ ท P0.2, P0.22 และ P0.30

- CAP0.1 มทงหมด 1 pin คอ ท P0.4

- CAP0.2 มทงหมด 3 pin คอ ท P0.6, P0.16 และ P0.28

- CAP0.3 มทงหมด 1 pin คอ ท P0.29

- CAP1.0 มทงหมด 1 pin คอ ท P0.10

- CAP1.1 มทงหมด 1 pin คอ ท P0.11

- CAP1.2 มทงหมด 2 pin คอ ท P0.17, P0.19

- CAP1.3 มทงหมด 2 pin คอ ท P0.18, P0.22 และ P0.21

Page 25: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

25

2.5.2 กำรเขยนโปรแกรม เพอใชงำนอนเตอรรพท

รปท 2-20 รปแบบการเขยนโปรแกรมอนเตอรรพท

จากรปท 2-20 number คอ INT0 เปน 0 , INT1 เปน 2 , TIMER 0 เปน 1 , TIMER 0 เปน 3 , พอรตอนกรม เปน โดยแตละ ไมโครคอนโทรเลอรจะมการเขยน การตงชอแตกตางกน โดยถาเปน ARM7 จะมการตงชอแลวตามดวย__irs แลวหลงจากนยามการท างานภายในครบกจะปดทายดวยการ ACKNOWLEDGE INTERRUPT เพอท าใหรวาจบการท างานแบบอนเตอรรพทแลวสามารถกลบไปท างานในฟงกชนหลกตอไป แลวภายในฟงกชนหลกจ าเปนตองมการบอกวา ต าแหนงของ ชอฟงกชน อนเตอรรพท คออะไรและ อยสวนไหนของ หนวยความจ าเพอเวลาเกดอนเตอรรพทเขามา ต าแหนงการประมวลผลจะกระโดดไปท างานต าแหนงนนไดถกตองและสามารถกลบมาท างานเดมไดหลงจากท าเสรจ

Page 26: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

26

รปท 2-21 รปแบบการเขยนฟงกชนแบบอนเตอรรพท

หลกการเขยนฟงกชนอนเตอรรพทนน จะตอทายชอฟงกชนดวย interrupt แลวตามดวย__irq เพอระบวาเปนอนเตอรรพทฟงกชน และภายในฟงกชนนนจะมการตรวจสอบหรอมการท างานทตองการเมอมการเกด สญญาณ อนเตอรรพทขน โปรแกรมจะมาท างานในฟงกชนนเองโดยจะพกงานอนไวกอนและเมอท าเสรจจะกลบไปท างานเดมตออกครงโดยจะเปรยบเหมอนการขดจงหวะการท างานหลก

2.5.2.1 ตวควบคมเวกเตอรอนเตอรรปต (Vectored Interrupt Controller)

เวกเตอรอนเตอรอนเตอรรปต (Vectored Interrupt Controller (VIC)) รบทกสญญาณอนเตอร

รปตทถกสรางขน ล าดบความส าคญของอนเตอรสามารถก าหนดไดทางซอรฟแวร (software) การรองขออนเตอรรปตม 3 ประเภท:

1. การรองขออนเตอรรปตแบบเรว (Fast Interrupt Request (FIQ))ส าคญทสด 2. การรองขอเวกเตอรอนเตอรรปต (Vectored Interrupt Request (IRQ)). ส าคญเปนอนดบ 2 3. การรองขออนเตอรรปตแบบไมมเวกเตอร (Non-vectored IRQ) ส าคญเปนอนดบ 3

Page 27: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

27

2.5.3 กำรใชงำน PWM LPC2148 มชองสรางสญญาณ PWM 6 ชอง โดยใชไทเมอรของระบบเปนหลก และเพมคาไทเมอรโดย

ใชสญญาณเพอรเฟอรล นอกจากนยงใชรจสเตอรเกบคาเปรยบเทยบ (Master Reset)เปนตวก าหนดคาบเวลาของสญญาณ PWMนอกจากนยงก าหนดขอบสญญาณ PWN ใหเปนขาขนหรอลง น าไปควบคมมอเตอร 3 เฟสไดจะมการใชรจสเตอรเกบคาเปรยบเทยบ (MR) 2 ตว: ส าหรบควบคมรอบ (cycle) ของสญญาณและก าหนดต าแหนงขอบขาของสญญาณ โมดลสรางสญญาณ PWM ท างานดงตอไปน:

- มรจสเตอรเกบคาเปรยบเทยบ (MR) 7 ตว

- รจสเตอรเกบคาเปรยบเทยบ (MR) จะท างานเมอคาของไทเมอรยงท าการเพมคาตอไป หรอหยดหรอรเซต (reset)

- ก าหนดต าแหนงขาของสญญาณได

- 32-bit ไทเมอร/เคานเตอร (Timer/Counter) ทใชปรสเกลเลอร 32-bit

- มเอาพตสญญาณ PWM 6 ชอง

Page 28: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

28

บทท3 รำยละเอยดกำรท ำงำน

ในบทนจะเปนการอธบายคณลกษณะเฉพาะของ ฮารดแวร ทใชงาน รปแบบของโครงงาน ขนตอนการท างานของโปรแกรม และผลลพธทไดจากการด าเนนงาน

3.1 Hardware Specification

เนอหาจะอธบายคณลกษณะเฉพาะของ ฮารดแวร ทกประเภททใชในการพฒนา

ตาราง 3-1 แสดง Hardware Specification

Item Description

บอรด ARM7 LPC2148 ท าหนาทควบคมการตดตอและประมวลผล

โหมดทใชงาน คอ timer และ interrupt

สายสงสญญาณ ไวรบสงขอมลแบบสญญาณ pulse

Ultrasonic Sensor ไวตรวจจบวตถหรอสงกดขวาง

โดยจะท าการสงคลนออกไปเมอม pulseจาก

ARM7สงมา และสงผลลพธไปยงARM7

หฟง ท าหนาทเปนตวแสดงผลเปนสญญาณเสยงเตอน

โดยผลลพธทไดจะถกสงมาจาก ARM7

แวนตา เขมขด ท าหนาทตดตง Sensorใหยดตดกบผใช

หมอแปลงไฟ ขนาด DC 5V ไวเปนแหลงจายไฟใหบอรด ARM7

Page 29: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

29

3.2 System Architecture

ผใช

รปท 3-1โมเดลระบบทเกยวของกบโครงงาน

1

2 3

4 5

Page 30: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

30

องคประกอบทงหมดทเกยวของ 1.เรมจาก Ultrasonic Sensor ท าหนาทตรวจจบวตถทอยในระยะ 3เมตรตามความสามารถของ SRF-05 โดยจะท า

การสงคลนอลตราโซนคออกไปเมอไดรบสญญาณความถจาก ARM7โดยใชการใชสาย 4 เสนในการเชอมตอซงประกอบไปดวย VCC GND P0.7 P0.29 และเมอสามารถตรวจพบวตถจะสงคลนทมความถทแตกตางกนไปตามระยะทางทวตถวางอยหางจาก sensor

2.Microcontroller ท าหนาทสงสญญาณมาบอกเปนคลนความถสญญาณพลส ใหกบ sensor โดยใชสาย 4 เสนในการเชอมตอซงประกอบไปดวย VCC GND P0.7 P0.29 และเมอสามารถตรวจพบวตถจะสงคลนทมความถทแตกตาง แลวรอสญญาณท sensor สงกลบมาบอกแลวอานคาเปนตวเลข ซง คอระยะทางทวตถอยนนเองและท าหนาตดตอกบสวนแสดงผลในทนคอ หฟงหรออาจเปนจอ LCD ในเบองตน

3. IC สรางสญญาณเสยง UM66 ท าหนาทรบแรงดนจาก microcontroller ซงจะมระดบแรงดนทแตกตางกนตามคาระยะทางทตรวจพบวตถ เชอมตอดวยสายไฟ 1 เสนตอท P0.25 และเมอ ไดรบแรงดนในชวงใดกจะแสดงผลเปนเสยงทมคาความถและระดบแรงดนของเสยงทหนกเบาแตกตางกนตามระยะทางนน

4. แบตเตอร 9V DC ท าหนาทก าเนดพลงงานไปเลยง sensor และบอรด microcontroller ท าใหไมจ าเปนตองตอสายอะเดปเตอรและสะดวกตอการประยกตและทดสอบการใชงานนอกสถานท

5. ฟงท าหนาทตดตอกบ ARM7 เพอรอผลลพธทจะสงมาแสดงเปนสญญาณเสยงเตอนเพอบอกผใชวาดานหนามวตถอยหรอไมโดยทง 3 สวนนนมความส าคญและจ าเปนตองรอผลลพธจากการท างานกนเปนล าดบซงเปนระบบทจ าเปนตองรอการท างานของสวนอนกอนจงอาจเกดความผดพลาดจากเวลาทใชอาจไมเปนแบบทนททนใดโดยเชอมตอจากสวน out put ขา 3ของ IC ดวยสายไฟและตอเขากบขา input ของ jack แลวตอไปยงหฟงผานหวตวผทตอกบ jack ตวเมย

3.3 System Design

ในสวนนจะเปนการแสดงภาพรวมของระบบการท างาน ขนตอนการท างานของสวนตางๆในลกษณะ Use Case Diagram และ อธบายความสมพนธของ Use Case Diagram แตละสวนของ ภาพรวมของระบบการท างานของโครงงาน

Page 31: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

31

ภาพรวมของระบบการท างาน

โดยโครงงานนเปนการสรางรปแบบการท างานแบบจ าลองเพอแสดงการท างานระหวางผใชงานกบอปกรณทสรางขนท าการทดสอบการใชงานจรงหลงจากททดสอบระบบยอยๆแลววาแตละสวนของอปกรณนนสามารถท างานไดแตละสวนของอปกรณจะม ทงหมด 4 สวนหลกๆ

1. sensor ท าหนาทตรวจหาวตถในระยะ 3 เมตรและสงสญญาณมาบอกกบ microcontroller ถาพบหรอไมพบ

2. microcontroller ท าหนา เปนสวนกลางการเชอมตอระหวางโมดลทง 3 สวนและท าการควบคมโดยโปรแกรม

3. หฟง ท าหนาทรบสญญาณเสยงจาก ไอซก าเนดเสยง ทโดนควบคมโดย microcontroller

4. แบตเตอร ท าหนาทใหพลงงานกบบอรด microcontroller ไอซเสยง และ sensor

รปท 3-2 แผนภาพขนตอนการใชงาน

ผใช

1.ตดตงอปกรณ

2.เปดการใชงาน

3.ทดสอบการท างาน

4.ปดการใชงาน

1.1ใสแบตเตอร

1.2ใสหฟง

1.3 เกบสายและบอรด

2.1กดปม reset ในบอรด

3.1ฟงระดบเสยง/เมอเขาใกลวตถ

4.1ดงขวแบตเตอรออก

Page 32: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

32

รปท 3-3 การสวมใส

3.4 System Implementation

รปท 3-4 การเชอมตอ ของโครงงานแวนตาเพอคนพการ

LPC2148

VCC P0.25

P 0.2,P0.4(echo)

P0.07,P0.8(pulse)

GND - +

Sensor1 vcc

echo

pulse

gnd

UM66T05

1 2 3

หฟง

jack

- เบตเตอร9V +

Sensor0 vcc

echo

pulse

gnd

Page 33: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

33

จากภาพแสดงการเชอมตอ ของอปกรณทงหมด 6 ชดหลกๆ โดยขนตอนการตอวงจรทงหมดมดงน 1.น าสายสญญาณแบบแพ 8 เสน มาตอเขาท sensorโดยเรยงตามล าดบคอ vcc , echo, pulse ,gndจากนนน าไปตอ

เขาทพอรต บน arm7 ซงดจากเลขทอยบนบอรดไดวาพอรตใดอยต าแหนงใดบาง 2.ทดสอบตอขวแบตเตอรเพอดเพอดวา sensor ตอถกจะมไฟ led สแดงตดทดานหลง sensor แสดงวาวงจรท างาน

ถกถาไมมใหถอดขวแบตเตอรออกกอนแลวไลสายใหม 3.ตอ สาย 3เสนทละเสนตามภาพของ IC UM66T05 โดยน าสายเสนหมายเลข 3 ตอเขา buzzer บนบอรดแลวตอขว

แบตเตอรอกครง ถาไฟบน sensor ท างานแต ไมมเสยงดงใหกด reset 1ครง ถาไมดงใหดงขวแบตเตอรออกแลวไลสายใหมหรอไม

4.ตอ jack เขากบบอรดและน าสาย จาก IC UM66T05 ขา 3 มาเขาขา inของ jack และตอกราวนและเสยบหฟงทดลองตอขว

รปท 3-5 ผงการท างานของโปรแกรม

Start

void timer0_isr(void)__irq void

distance() Int main()

Pwm initail

Timer0 initail

Timer1 initail

Interrupt timer0

initail

Loop(infinity)

END

Chk cap1

On timer0

=1;

Off timer0 Chk cap2

printf("\rdistance

:%.2f ",result);

Chk

cap3

Chk

cap4

On timer1;

Off timer1;

distance()

;

distance()

;

Page 34: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

34

กำรท ำงำนของโปรแกรม

ฟงกชน timer0_isr (void) __irq ท าหนาตรวจสอบวามสญญาณขอบขาขนหรอลงเขามาทพอรต 0.2 ,0.4, 0.6 ,0.29 โดย เปนฟงกชนทท างานแบบ interrupt คอ เมอ capture พอรตใดพอรตหนงจาก 4 พอรต ไดรบขอบขาของสญญาณทถกสงมาจาก sensor จะสงใหโปรแกรมมาประมวลผลหรอมาท างานในฟงกชนนโดยทนท คอ จ าเปนตองพกงานสวนอนไวกอนชวขณะ เพอมาท าสวนนใหเสรจผลลพธจากการท า งานของฟงกชนคอ ถามขอบขาขน จะสงให timer on หรอถามขอบขาลงจะสงให timer off แลวน าคาทนบไดจาก timer มาค านวณแลวแปลงเปนคาระยะทางของวตถจรงทอยหางจาก sensor ได

ฟงกชน distance()ท าหนาท ค านวณคาระยะทางจาก timerทไดแลวตดตอสวนของ uart และ DACเพอไปควบคมไอซ เสยงใหท างานแสดงผลออกทางหฟงเปนความหนกเบาตามระยะทางจรงท sensor พบวตถ ดงแสดงในตารางท 3-2

ฟงกชน main() ท าหนาทเรยกใชฟงกชนอนๆและสงคา pwm ออกไปทาง port 0.7 0.8 และ ก าหนดคา เรมตนใหกบ timer 2 ตว และ capture 4 ตวทตองใชงาน แลวท าการสง while(1) เพอใหโปรแกรม ท างานอยเรอยตลอดเวลา

การท างานของ sensor ทง 2 ตว ถาดจากตารางท 3.2 แลวจะพบวามชวงการท างาน 3 แบบ ดงแสดงในตารางท 3-2

1.ชวงเรมตน เปนการก าหนดคาเรมตนกอนการท างาน คา capture จะไมมขอมล และ คา pwm จะถก setเปน 1

2.ชวง sensor 1 ท างาน เมอม sensor 1 พบวตถระยะทางใกลกวา sensor 2 ท าให capture1 มคาและ pwm2 จะ reset

3.ชวง sensor 2 ท างาน เมอม sensor 2 พบวตถระยะทางใกลกวา sensor 1 ท าให capture2 มคาและ pwm1 จะ reset

ตารางท 3-2 timing diagram ของ sensor

Page 35: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

35

บทท4 กำรทดลองและสรปผล

การทดลองของโปรเจคมทงหมด 2 สวน คอ

1. สวนของเซนเซอร

2. สวนของวงจรเสยง

4.1 การทดลองเรอง การอานคาระยะทางจาก sensor 1 ตว และ sensor 2 ตว

วตถประสงค

1. เพอทดลองอานคาระยะทางจากโปรแกรมทเขยนขน

2. ตรวจสอบคาความผดพลาดทเกดจากการอานระยะทางกบคาวตถจรงเพอน ามาแกไข

ตาราง 4-1 ผลการทดลองเพอหาดระยะทาง

SENSOR1 Error1(%) SENSOR2 Error2(%) Length(cm)

10.4 4 10.1 1 10

20.1 0.5 20.3 1.5 20

30.2 0.6 30.1 0.3 30

40.2 0.5 40.2 0.5 40

อธบายผลกาทดลอง

จากตารางท 4-1 เนองจากคาทได ท าใหเหนวาคาระยะทางนนมคาความผดพลาดอยบางท าใหตองมการปรบปรงคาคงทใหมความนอยลงเพอจะไดระยะทางทมความถกตองมากขน

Page 36: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

36

4.2 การทดลองเรอง การตอและควบคมวงจรเสยง

วตถประสงค

1. เพอตองผลลพธทไดจากการควบคมอปกรณก าเนดเสยงจาก IC UM66 2 ตว ไปใชงาน

2. ใชงาน GPIO และ DAC ควบคม ความดงของ IC UM66 2 ตว หลงจากตอวงจรใชงานได

อปกรณ

1. IC UM66 2 ตว 4. IC 74LS244 1 ตว

2. บอรด arm7 LPC2148 1 บอรด 5. หฟง 1 อน

3. สาย box 3 เสน 6. แจคเสยบหอฟง 1 อน

วธทดลอง ตอวงจรตามรปท 4-0 แลวบนทกผล แลวเปลยน input ตามรปท 4-0 ตอวงจรดงแสดงดงรปท 4-1แลวบนทกผล แลวเปลยน input ดงแสดงดงรปท 4-2

รปท 4-1 วงจร เสยงทแบบท 1 รปท 4-2 วงจร เสยงทแบบท 2

Page 37: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

37

ตารางท 4-2 ผลการทดลอง จากรปท 4-1

ตารางท 4-3 ผลการทดลอง จากรปท 4-2

อธบายผลการทดลองท 2

จากรปท 4-2 และ 4-3 การท างานของ IC UM66 ยงไมสามารถควบคมได จากการสง port IO ไปยง IC 74244

สงเกตวา IC UM66 จะ มสถานะ on ทง 2 ตว จากโดยดจากตารางบนทกผล

NO. IO 74LS244 D/A IC UM66

Sensor1 P0.16 z 1023-(result*3) on

Sensor2 P0.17 0 1023-(result*3) on

NO. IO 74LS244 D/A IC UM66

Sensor1 P0.16 0 1023-(result*3) on

Sensor2 P0.17 z 1023-(result*3) on

Page 38: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

38

4.1 สรปผล

สามารถด าเนนโครงงานไดตามทก าหนดไวในหวขอ ขนตอนการด าเนนโครงงาน โดยอปกรณทประกอบขนยงเปนเพยงตนแบบจงยงไมเหมาะทจะน าไปใชงานจรงกบผพการ เนองจากการสรางท าโดยการประกอบขนเพอทดลองเทานน

4.2 ปญหาและอปสรรค

ในสวนขอนผด าเนนโครงงานจะอธบายเฉพาะปญหาทพบและยงไมสามารถแกไขได โดยมรายละเอยด หวขอดงตอไปน

- ปญหาการบอกต าแหนงวตถทมหลายชนใกลๆกนท าใหไมแนใจวาเสยงทเปนผลลพธมาจากวตถชนใด - ท างานไมดในหองแคบและมสงกดขวางมาก - การท างานรวมกนของ sensor 2 ตวเปนแบบอสระตอกนไดยาก - การประกอบและสรางอปกรณภายนอกท าไดไมคอยดเนองจากขาดประสบการณในการประกอบ

ชนงาน - เกดความผดพลาดและงานออกมาไมคอยสวยงาม

Page 39: บทท1 บทน ำ - intranet.coe.phuket.psu.ac.thintranet.coe.phuket.psu.ac.th/pdb/download/2011-03-16-232... · On-Chip Boot-Loader Software ทางพอร์ต UART0

39

บรรณานกรม

[1] อโชต จตไพศาลสข และปตพนธ หลอจระขณหกล. (2543).รายงาน ARM (Advanced RISC Machine). http://www.cpe.ku.ac.th/~yuen/204323/powerpc/index.html ,(สบคนเมอ13พฤศจกายน2553) [2] A.N. Sloss, D.Symes, C. Wright (2001) ARM System Developer’s Guide ,(สบคนเมอ 20 พฤศจกายน 5553) [4] Steve Furber (1996). ARM System-On-Chip Architecture, 2nd Edition, (สบคนเมอ 20 พฤศจกายน 2553) [5] David Seal (2000) : ARM Architecture Reference Manual, 2nd Edition, (สบคนเมอ 21 พฤศจกายน 2553) [6] ARM710T Datasheet, Publisher: ARM, August 1998, retrieved ,(สบคนเมอ 21 พฤศจกายน 2553) http://www.arm.com/documentation/ARMProcessor_Cores/index.html. [7] ARM Technical Reference Manual, Publisher: ARM, March 2006, retrieved ,(สบคนเมอ 21 มกราคม 2554) http://www.arm.com/documentation/ARMProcessor_Cores/index.html. [8] ARM The Architecture for the digital world.(2005). ARM7Family,(สบคนเมอ 21 มกราคม 2554) http://www.arm.com/products/CPUs/ARM7.html [9] SRF05 - Ultra-Sonic Ranger Technical Specification, (สบคนเมอ 21 มกราคม 2554) http://www.robot-electronics.co.uk/htm/srf05tech.htm