วันอังคารที่ 7 สิงหาคม พ.ศ. 2555

MATLAB คืออะไร

ทำไมต้องใช้ MATLAB ด้วย ใช้ภาษาอื่นไม่ได้หรือ
คอมพิวเตอร์ได้สร้างขั้นมาเพื่อใช้ในการแก้ปัญหาในเชิงตัวเลขโดยมีภาษาทางคอมพิวเตอร์หลายตัวที่ช่วยในการแก้ปัญหา เช่น ภาษา C, Fortran , Pascal เป็นต้น การใช้โปรแกรมภาษา C, Fortran และ Pascal ในการแก้ปัญหาเชิงตัวเลข และกราฟิกที่มีความซับซ้อนค่อนข้างจะยุ่งยากและเสียเวลามาก เพราะต้องใช้คำสั่งเป็นจำนวนมาก และมีรูปแบบคำสั่งที่แน่นอน บริษัท MathWorks Inc, จึงได้พัฒนาโปรแกรมที่มีชื่อว่า MATLAB เพื่อใช้ในการคำนวณเชิงตัวเลข และกราฟิกที่ซับซ้อนให้ง่ายต่อการใช้งาน มีความรวดเร็ว และการเขียนโปรแกรมไม่ยุ่งยาก เนื่องจากโปรแกรม MATLAB เป็นโปรแกรมที่มีการพัฒนาอย่างไม่หยุดยั้ง และเป็นโปรแกรมที่ง่ายต่อความเข้าใจ และเขียนโปรกแกรมไม่ซับซ้อน และเมื่อนำไปใช้งานและสามารถเห็นผลลัพธ์ได้อย่างรวดเร็ว ด้วยเหตุนี้เองจึงทำให้โปรแกรม MATLAB ถูกนำมาใช้งานกันอย่างกว้างขวางในสาขาต่าง ๆ



MATLAB คืออะไร 
MATLAB เป็นภาษาคอมพิวเตอร์ชั้นสูง (High-level Language) สำหรับการคำนวณทางเทคนิคที่ประกอบด้วยการคำนวณเชิงตัวเลข กราฟิกที่ซับซ้อน และการจำลองแบบเพื่อให้มองเห็นภาพพจน์ได้ง่ายและชัดเจนชื่อของ MATLAB ย่อมาจาก matrix laboratory เดิมโปรแกรม MATLAB ได้เขียนขึ้นเพื่อใช้ในการคำนวณทาง matrix หรือเป็น matrix software ที่พัฒนาจากโพรเจ็กที่ชื่อ LINKPACK และ EISPACK

MATLAB ได้พัฒนามาด้วยการแก้ปัญหาที่ส่งมาจากหลายๆ ผู้ใช้เป็นระยะเวลาหลายปีจึงทำให้โปรแกรม MATLAB มีฟังก์ชันต่างๆ ให้เลือกใช้มากมาย ในบางมหาวิทยาลัยได้ใช้โปรแกรม MATLAB เป็นหลักสูตรพื้นฐานในการศึกษาทางด้วนคณิตศาสตร์ วิศวกรรม และวิทยาศาสตร์แขนงต่างตลอดจนใจด้วนอุตสาหกรรมได้ใช้โปรแกรม MATLAB เป็นเครื่องมือสำหรับใช้ในงานวิจัย พัฒนาและวิเคราะห์

โปรแกรม MATLAB จะมีกล่องเครื่องมือที่ใช้ในการหาคำตอบเรียกว่า Toolbox โดยโปรแกรม MATLAB จะมี toolbox ในแต่ละสาขา เช่น การประมวลผลสัญญาณ (Signal processing toolbox) การประมวลผลภาพ (image processing toolbox) ระบบควบคุม (control system toolbox) โครงข่ายประสาท (neural networks toolbox) ฟัซซี่ลอจิก (fuzzy logic toolbox) เวฟเลท (wavelet toolbox) การติดต่อสื่อสาร (communication toolbox) สถิติ (Statistics toolbox) และสาขาอื่นๆ มากมาย ภายใน toolbox แต่ละสาขาก็จะมีฟังก์ชันต่างๆ ที่เกี่ยวข้องกับการแก้ปัญหาในสาขานั้นๆ ให้เลือกประยุกต์ใช้งานเป็นจำนวนมาก



โปรแกรม MATLAB ดีอย่างไร
สำหรับผู้ที่ยังไม่เคยใช้งานโปรแกรม MATLAB อาจสงสัยว่าโปรแกรม MATLAB มีข้อดีอย่างไร ทำไมถึงไม่ใช้งานภาษาโปรแกรมอื่นๆ และแตกต่างจากโปรแกรมภาษาอื่นๆ อย่างไร ดังนั้นในหัวข้อนี้จึงได้จำแนกลักษณะเด่นที่ง่ายต่อการใช้งานของโปรแกรม MATLAB ดังนี้ คือ
  • มีฟังก์ชันคณิตศาสตร์ให้เลือกใช้ในการคำนวณมากมายตลอดจนเราสามารถสร้างฟังก์ชันขึ้นมาใช้งานได้เองในสาขาที่ต้องการ โดยฟังก์ชันที่สร้างขึ้น (M-File) จะมีนามสกุลเป็น .M
  • Algorithm พัฒนาได้ง่ายไม่ยุ่งยาก สามารถแก้ไขปัญหาทางด้วนคณิตศาสตร์ที่มีความซับซ้อนได้ง่าย และรวดเร็วกว่าโปรแกรมภาษาอื่นๆ เช่น C Fortran Basic เป็นต้น
  • มีโครงสร้างแบบจำลอง (Simulink) ซึ่งเป็น Package ที่เรานำไปสร้างบล็อกไดอะแกรมเพื่อใช้ทดสอบ และประเมินผลระบบ Dynamic ต่างๆ ก่อนนำไปใช้งานจริง
  • สามารถวิเคราะห์และตรวจสอบข้อมูลได้ง่ายและรวดเร็ว
  • นำไปใช้งานในทางด้วนกราฟิกได้เป็นอย่างดีทั้งในด้านการแสดงภาพตั้งแต่สองมิติที่เป็น rectangular polar stair bar รวมทั้งภาพสมมิติในรูปแบบพื้นผิว (surface) และระดับสูงต่ำ (contour) ตลอดจนสามารถนำภาพมาต่อกัน และเก็บไว้เพื่อที่จะสร้างเป็นภาพเคลื่อนไหวได้อีกด้วย
  • ประยุกต์ใช้ในการสร้างรูปแบบ Graphical User Interface ได้โดยการเลือกใช้ object และเมนูต่างๆ โดยโปรแกรม MATLAB จะมีเครื่องมือให้เลือกใช้ เช่น เมนู รายการ ปุ่มกด และ fields object ต่างๆ เพื่อให้ผู้ใช้สามารถเลือกนำไปใช้ในการทำงานปฏิสัมพันธ์กันระหว่างผู้ใช้กับเครื่องคอมพิวเตอร์ได้
  • ทำการประมวลผลร่วมกับโปรแกรมอื่นได้ เช่น Fortran, Borland C/C++, Microsoft Visual C++ และ Watcom C/C++ ด้วยการเขียนฟังก์ชันที่เป็น mex ไฟล์โดยโปรแกรม MATLABจะเรียกใช้รูทีนจากโปรแกรมภาษา C และ Fortran
  • โปรแกรม MATLAB เป็นระบบ interactive ซึ่งส่วนของข้อมูลพื้นฐานเป็นอาร์เรย์ที่ไม่ต้องการมิติ ทำให้โปรแกรม MATLAB สามารถทำการแก้ปัญหาทางเทคนิคต่างๆ ได้มากใช้เวลาในการประมวลผลน้อย และดีกว่าโปรแกรมภาษา C และ Fortran




  • โครงสร้างของ MATLAB

    โครงสร้างของโปรแกรม MATLAB ประกอบด้วย 5 ส่วนใหญ่ คือ
    1. ภาษาโปรแกรม MATLAB (The MATLAB language)
      MATLAB เป็นโปรแกรมภาษาชั้นสูงที่ใช้ควบคุม flow statement ฟังก์ชัน โครงสร้างข้อมูลอินพุท/เอาท์พุท และลักษณะโปรแกรม Object-Oriented Programming ทำให้การเขียนโปรแกรมไม่ยุ่งยากเมื่อเทียบกับการเขียนโปรแกรมด้วยภาษาอื่นๆ เช่น C, Fortran, Basic เป็นต้น
    2. สถาปัตยกรรมในการทำงานของ MATLAB (The MATLAB working environment)
      MATLAB จะมีกลุ่มของเครื่องมือที่เป็นประโยชน์สำหรับการทำงานของผู้ใช้โปรแกรม หรือโปรแกรมเมอร์ประโยชน์ที่กล่าวนี้ก็คือการจัดการตัวแปรใน workspace การนำข้อมูลหรือการผ่านค่าตัวแปรเข้า/ออกและกลุ่มของเครื่องมือต่างๆ นี้ก็จะใช้สำหรับพัฒนา จัดการ ตรวจสอบความผิดพลาดของโปรแกรม (debugging) ที่ได้เขียนขึ้น
    3. ฟังก์ชันในการคำนวณทางคณิตศาสตร์ (The MATLAB mathematical function library)
      MATLAB จะมีไลบรารีทั่วไปที่ใช้ในการคำนวณอย่างกว้าง เช่น sine, cosine และพีชคณิตเชิงซ้อนโดยสามารถนำไปประยุกต์ใช้เป็นฟังก์ชันหรือไลบรารีเพิ่มเติมขึ้นจากไลบรารีที่ใช้กันโดยทั่วไป เช่น ฟังก์ชันในการหา eigenvalues และ eigenvectors การแยกตัวประกอบและส่วนประกอบของเมตริกซ์ด้วยวิธีต่างๆ การวิเคราะห์ข้อมูล การหาความน่าจะเป็น และการแก้ปัญหาระบบของสมการเชิงเส้นที่เป็นพื้นฐานของสาขาวิชาต่างๆ เป็นต้น ทำให้โปรแกรม MATLAB มีฟังก์ชันสำหรับใช้งานค่อนข้างมากและครอบคลุมในรายละเอียดของการคำนวณสาขาต่างๆ ได้มากขึ้น
    4. Handle Graphics
      ระบบกราฟิกของ MATLAB จะประกอบด้วยคำสั่งชั้นสูงสำหรับการพล็อตกราฟโดยมีพื้นฐานอยู่บนแนวความคิดที่ว่าทุกๆ สิ่งบนหน้าต่างรูปภาพของโปรแกรม MATLAB จะเป็นวัตถุ (Object) ซึ่งมีเอกลักษณ์เฉพาะตัว Handle Graphics ประกอบด้วยคำสั่งชั้นสูงให้คุณได้เลือกใช้ในการสร้าง Graphic User Interface บนพื้นฐานการประยุกต์ใช้งานของคุณ นอกจากนี้โปรแกรม MATLAB ยังมีฟังก์ชันที่ใช้สำหรับการแสดงภาพสองมิติ ภาพสามมิติ และการสร้างภาพเคลื่อนไหว
    5. The MATLAB Application Program Interface (API)
      API จะใช้เพื่อสนับสนุนการติดต่อจากภายนอกโดยใช้โปรแกรมที่เป็น mex ไฟล์ซึ่งเป็นไฟล์ซึ่งเป็นไฟล์ที่เขียนขึ้นโดยใช้ mex ฟังก์ชันใน MATLAB ซึ่งจะเรียกใช้รูทีนจากโปรแกรมภาษา C และ Fortran หรืออาจกล่าวได้ว่า API เป็นไลบรารีที่เขียนด้วยโปรแกรมภาษา C และ Fortran ที่มีการเชื่อมต่อกับโปรแกรม MATLAB ด้วยไฟล์ที่เป็น mex ฟังก์ชันอีกทั้ง MATLAB API นี้ยังมีความสามารถสำหรับการเรียก routine จาก MATLAB (dynamic linking) ก็ได้



    นอกจากลักษณะเด่นของโปรแกรม MATLAB ทั้ง 5 ข้อที่ได้กล่าวมาข้างต้นแล้วโปรแกรม MATLAB ยังมีเครื่องมือที่ใช้สำหรับการวิเคราะห์และทดสอบระบบโดยการจำลองขึ้นมาซึ่งก็คือ Simulink

    Simulink เป็นโปรแกรมที่ควบคู่กับ MATLAB ซึ่งเป็นระบบ Interactive สำหรับการจำลองและวิเคราะห์ระบบไดนามิกต่างๆ ที่เป็นระบบเชิงเส้น (Linear) ระบบไม่เชิงเส้น (nonlinear) Simulink เป็นโปรแกรม mouse-driver ที่ให้คุณใช้ระบบโมเดลโดยการวาดบล็อกไดละแกรมบนจอภาพด้วยการใช้เมาส์ทำให้โปรแกรม MATLAB สามารถทำการจำลองระบบได้หลายรูปแบบ น เชิงเส้น (linear) ไม่เชิงเส้น (nonlinear) เวลาต่อเนื่อง (continuous-times) เวลาไม่ต่อเนื่อง (discrete-time) และระบบเหลายอัตรา (multirate) ซึ่งแต่ละรูปแบบที่นำมาสร้างแบบจำลองในการวิเคราะห์นี้ผู้ใช้จะต้องมีความเข้าใจพื้นฐานการทำงานของบล็อกแต่ละบล็อกได้เป็นอย่างดี ตลอดจนเข้าใจระบบโดยรวมของงานที่จะกระทำด้วย

    Blocksets เป็นสิ่งที่เพิ่มเติมใน Simulink โดยจะเป็นไลบรารีของบล็อกสำหรับการประยุกต์เฉพาะ เช่น การติดต่อสื่อสาร (Communications) การประมวลผลข้อมูล (Signal processing) และระบบไฟฟ้ากำลัง (power systems)
    Real-time Workshop เป็นโปรแกรมที่ให้คุณสร้าง c code จากบ็อกไดอะแกรมของคุณและสามารถกระทำกับบล็อกไดอะแกรมได้หลากหลายด้วยระบบเวลาจริง (real-time systems)

    โปรแกรม MATLAB มีอยู่หลาย version ซึ่ง version ดั้งเดิมของโปรแกรม MATLAB จะใช้งานบน DOS ที่มีการคำนวณไม่ยุ่งยากเหมาะสำหรับผู้เริ่มศึกษา คอมพิวเตอร์ที่ใช้ก็ไม่จำเป็นต้องมีพื้นที่หน่วยความจำมาก ใช้ได้กับ CPU ที่มีความเร็วต่ำ แต่มีข้อเสียคือฟังก์ชันที่นำมาใช้งานมีน้อยทำให้เขียนโปรแกรมที่มีความซับซ้อนได้ไม่ดีเท่าที่ควรเพราะมีประสิทธิภาพและความเร็วในการประมวลผลต่ำ ต่อมาเมื่อระบบเลือกใช้ได้มากมายจึงทำให้โปรแกรม MATLAB มีประสิทธิภาพและมีความสามารถในการประมวลผลที่เร็วขึ้น version ใหม่ที่ได้ทำการปรับปรุงใหม่ให้ดีขึ้นนี้จะใช้งานบน Windows ทำให้ผู้ใช้มีความสะดวกในการใช้งานมากขึ้น ข้อดีของ version ใหม่นี้คือมีประสิทธิภาพที่ดีขึ้น การประมวลผลโปรแกรมที่ซับซ้อนมีความเร็วสูงขึ้น และมีฟังก์ชันต่างๆ ให้เลือกใช้ในการสาขาต่างๆ มากมาย แต่ก็ต้องใช้กับคอมพิวเตอร์ที่มีพื้นที่หน่วยความจำมาก CPU มีความเร็วสูง และต้องการ Co-processor ในการช่วยคำนวณแต่เมื่อเปรียบเทียบกับผลดีที่ได้ก็ถือว่าคุ้ม



    คอมพิวเตอร์ที่เหมาะสมสำหรับโปรแกรม MATLAB
    เนื่องจากโปรแกรม MATLAB เป็นโปรแกรมที่ใช้สำหรับการคำนวณทางคณิตศาสตร์และกราฟิกที่ซับซ้อนดังนั้นจึงจำเป็นต้องใช้เครื่องคอมพิวเตอร์ที่มีความเร็วสูง คอมพิวเตอร์พีซีที่เหมาะสมกับโปรแกรม MATLAB คือ มีซีพียูรุ่นเพนเทืยมขึ้นไป แรมควรมีอย่างต่ำ 32 เมกกะไบต์ ส่วนฮาร์ดดิสก์ควรมีเนื้อที่ว่างเกินกว่า 80 เมกกะไบต์ขึ้นไป






    คำสั่งโปรแกรม MATLAB รูปแบบการแสดงค่า ตัวอย่างค่า Pi
    format short การแสดงตัวเลข 5 ตำแหน่ง 3.1416
    format short e การแสดงตัวเลข 5 ตำแหน่งพร้อมเลข Exp 3.1416e+00
    format short g การแสดงตัวเลขที่ดีที่สุดระหว่างในรูปแบบสั้นๆ หรือในรูปแบบเลข Exp แล้วแต่ความเหมาะสม 3.1416
    format long การแสดงตัวเลข 16 ตำแหน่ง 3.14159265358979
    format long e การแสดงตัวเลข 16 ตำแหน่งพร้อมเลข Exp 3.14159265358979e+00
    format long g การแสดงตัวเลขแบบยาว 3.14159265358979
    format hex การแสดงตัวเลขแบบฐาน 16 คือ 1..9 และ A..F 400921fb54442d18
    format bank การแสดงตัวเลขแบบธนาคาร คือทศนิยม 2 ตำแหน่ง 3.14
    format + การแสดงค่าตัวเลขว่าเป็น บวก ลบ หรือ ศูนย์ +
    format rat การแสดงอัตราส่วนโดยประมาณ 355/113





    ตัวดำเนินการเครื่องหมายพิเศษและตัวดำเนินการเปรียบเทียบและตรรกะ

    ลักษณะการดำเนินการตัวดำเนินการรูปแบบทางคณิตศาสตร์รูปแบบทาง MATLAB
    การบวก
    การลบ
    การคูณ
    การคูณเชิงสมาชิก
    การหารทางขวา
    การหารทางซ้าย
    การหารเชิงสมาชิก
    การยกกำลัง
    การยกกำลังเชิงสมาชิก
    +
    -
    *
    .*
    /
    \
    ./
    Ab
    A.b
    a+b
    a-b
    axb
    -
    a/b
    b/a
    -
    ab
    -
    a+b
    a-b
    a*b
    a.*b
    a/b
    a\b
    a./b
    a^b
    a.^b


    ในทาง MATLAB คือการนำเอา Matrix a และ Matrix bมา Operate กัน เช่น + ,-,*,/,หรือยกกำลังกัน เพราะฉะนั้นเงื่อนไขการ Operate ต่างๆ จึงเป็นวิธีการทาง Matrix ส่วนเครื่องหมายที่มีจุด (.) แสดงว่าจะกระทำเฉพาะแถวกับหลักเดียวกัน เช่น
    a = 1 2 3
        4 5 6
    b = 2 2 2
        2 2 2
    a.^b = 1  4  9
          16 25 36
    
    

    ตัวดำเนินการเปรียบเทียบและตรรกะ ลักษณะดำเนินการ ตัวดำเนินการเปรียบเทียบและตรรกะ ตัวอย่าง
    ลักษณะดำเนินการตัวดำเนินการเปรียบเทียบและตรรกะตัวอย่าง
    น้อยกว่า น้อยกว่าหรือเท่ากับ มากกว่า มากกว่าหรือเท่ากับ เท่ากับ ไม่เท่ากับ และ หรือ ไม่< <= > >= == ~= & | ~x<10 x<=10 x>10 x>=10 x==1 x~=5 x>2 & y<1 x>2 | y<1 ~x

    ฟังก์ชั่นที่ใช้ในการหาค่าทางตรีโกณมิติ
    คำสั่งรายละเอียด
    sin(x)  sinh(x)  asin(x) asinh(x)ใช้คำนวณหาค่า Sine ของ x ใช้คำนวณหาค่า Hyperbolic sine.ของ x ใช้คำนวณหาค่า Inverse sine. ของ x ใช้คำนวณหาค่า Inverse hyperbolic sine. ของ x
    cos(x)  cosh(x)  acos(x)  acosh(x)ใช้คำนวณหาค่า cos ของ x ใช้คำนวณหาค่า Hyperbolic cos.ของ x ใช้คำนวณหาค่า Inverse cos ของ x ใช้คำนวณหาค่า Inverse hyperbolic cos. ของ x
    tan(x)  tanh(x)  atan(x)  atan2(x)  atanh(x)ใช้คำนวณหาค่า Tangent ของ x ใช้คำนวณหาค่า Hyperbolic Tangent.ของ x ใช้คำนวณหาค่า Inverse Tangent. ของ x ใช้คำนวณหาค่าFour quadrant inverse tangent ของ x ใช้คำนวณหาค่า Inverse hyperbolic Tangent ของ x
    sec(x)  sech(x)  asec(x)  asech (x)ใช้คำนวณหาค่า Secant. ของ x ใช้คำนวณหาค่า Hyperbolic Secant.ของ x ใช้คำนวณหาค่า Inverse Secant. ของ x ใช้คำนวณหาค่า Inverse hyperbolic Secant. ของ x
    csc(x)  csch(x)  acsc(x)  acsch(x) ใช้คำนวณหาค่า Cosecant ของ x ใช้คำนวณหาค่า Hyperbolic Cosecant.ของ x ใช้คำนวณหาค่า Inverse Cosecant. ของ x ใช้คำนวณหาค่า Inverse hyperbolic Cosecant ของ x
    cot(x)  coth(x)  acot (x)  acoth(x)ใช้คำนวณหาค่า Cotangent ของ x ใช้คำนวณหาค่า Hyperbolic Cotangent.ของ x ใช้คำนวณหาค่า Inverse Cotangent. ของ x ใช้คำนวณหาค่า Inverse hyperbolic Cotangent ของ x

    ฟังก์ชั่นที่ใช้ในการหาค่า Exponential.
    คำสั่งรายละเอียด
    exp(x)  log(x)  log10(x)  log2(x)  pow2(x)  nextpow2(x)ใช้คำนวณหาค่า Exponential. ของ x ใช้คำนวณหาค่า Natural logarithm.ของ x ใช้คำนวณหาค่า Common (base 10) logarithm. ของ x ใช้คำนวณหาค่า Base 2 logarithm and dissect floating point number. ของ x ใช้คำนวณหาค่า เลขยกกำลังที่มี 2 เป็นฐาน ของ x ใช้คำนวณหาค่า ตัวเลขยกกำลังที่มี 2 เป็นฐานที่มีค่าเท่ากับหรือมากกว่า ของ x
    abs(x)  ceil(x)  floor(x)  round(x)  sqrt (x)  rem(x,y) sign(x)ใช้คำนวณหาค่า Absolute ของ x ใช้คำนวณหาค่าจำนวนเต็มใดๆที่ใกล้เคียงกับค่าของ x โดยให้ค่านั้นเข้าใกล้ ? มากที่สุด ใช้คำนวณหาค่าจำนวนเต็มใดๆที่ใกล้เคียงกับค่าของ x โดยให้ค่านั้นเข้าใกล้-? มากที่สุด ใช้คำนวณหาค่าจำนวนเต็มใดๆที่ใกล้เคียงกับค่าของ x โดยถ้าป็นทศนิยมเกิน 0.5 ปัดขึ้น ใช้คำนวณหาค่า Square root. ของ x ใช้คำนวณหาค่าเศษที่เหลือจากการหารกันระหว่าง x และ y ใช้สำหรับกำหนดค่าของ x ใดๆ ให้มีค่าเป็น -1,0,1  ถ้าเป็น -1 แสดงว่าค่าของ x > 0 ถ้าเป็น 0 แสดงว่าค่าของ x = 0 ถ้าเป็น 1 แสดงว่าค่าของ x < 0

    วันอังคารที่ 31 กรกฎาคม พ.ศ. 2555

    GPS คืออะไร


    GPS คืออะไร

              GPS ย่อมาจาก Global Position System เป็นระบบบอกตำแหน่งพิกัด ระบบ GPS นี้ได้รับการพัฒนาโดยรัฐบาลสหรัฐอเมริกา สำหรับใช้งานในทางทหาร เพื่อการคำนวณค่าตำแหน่งพิกัด และใช้ในการนำร่อง ได้ทุกจุดบนพื้นโลก แต่ระบบ GPS ยังสามารถนำมาใช้งานในทางพาณิชย์ เพื่อการนำทาง หรือเพื่อการสำรวจการทำเหมืองแร่ และป่าไม้  ระบบนี้ประกอบด้วย องค์ประกอบหลัก 3 ส่วน คือ
              1. ภาคอวกาศ (Space Segment)
    ประกอบด้วย กลุ่มของดาวเทียม GPS ที่โคจรรอบโลก สองรอบใน 1 วัน ซึ่งจะส่งสัญญาณเวลา ที่มีความแม่นยำสูง และข้อมูลที่สำคัญอื่นๆ ที่จะใช้ในการคำนวณ ตำแหน่งพิกัด ไปยังทุกจุดบนพื้นโลก ตลอด 24 ชั่วโมง
              2. ภาคพื้นโลก (Ground Segment)
    ประกอบด้วย กลุ่มของสถานีควบคุมดาวเทียม ทำหน้าที่ควบคุม วงโคจรดาวเทียม   คำนวณวงโคจรและตำแหน่งดาวเทียม ตรวจวัดความผิดพลาดของวงโคจร ปรับแก้ความถูกต้อง ของสัญญาณเวลา นำข้อมูลทั้งหมดมาปรับแก้ ก่อนส่งข้อมูลที่ถูกต้อง ขึ้นไปที่ดาวเทียม เพื่อส่งสัญญาณลงมายังผู้ใช้ ทั่วโลก
              3. ภาคผู้ใช้ (Users Segment)
    ประกอบด้วย ผู้ใช้งาน และ เครื่องบอกตำแหน่งพิกัด ซึ่งก็คือ เครื่องรับสัญญาณ GPS (GPS Receiver) ที่รับข้อมูล ต่างๆ จากดาวเทียม GPS แล้วนำมาคำนวณ หาตำแหน่งพิกัดของเครื่อง

              องค์ประกอบทั้งสามส่วน มีความสำคัญต่อระบบ GPS แต่ผู้ใช้เครื่อง มักจะมองไม่เห็น หน้าที่และความเกี่ยวข้อง ขององค์ประกอบที่สอง คือ สถานีควบคุมดาวเทียม เราจะมาพิจารณาถึงแต่ละ องค์ประกอบ ต่อไป

    ระบบ ดาวเทียม GPS
              ประกอบด้วยดาวเทียมทั้งหมด 24 ดวง โคจรในอวกาศ ครอบคุมทั่วโลกทั้งหมด 6 ระนาบ แต่ละระนาบทำมุม 60 องศา กับเส้นศูนย์สูตร ดาวเทียมแต่ละดวง โคจรอยู่สูงจากพื้นโลกประมาณ 11,000 ไมล์ และเคลื่อนที่ผ่านรอบโลก 2 รอบในแต่ละวัน   ในดาวเทียมแต่ละดวง จะมีส่วนประกอบหลัก คล้ายคลึงกับ ดาวเทียมสื่อสาร โดยทั่วไป คือ ภาครับสัญญาณ ภาคส่งสัญญาณ ภาคควบคุม และระบบสายอากาศวิทยุ   ส่วนพิเศษ ที่มีเฉพาะในดาวเทียม GPS คือ ภาคกำเนิดสัญญาณเวลาความแม่นยำสูง เป็น นาฬิกาอะตอมมิคแบบซีเซียม (Very High Precision Cesium Atomic Clock) ซึ่งได้รับการออกแบบ และผลิต โดยบริษัท Datum Incorporation USA
              ภาคกำเนิดสัญญาณเวลาความแม่นยำสูง เป็นหัวใจสำคัญ ที่เป็นตัวกำหนด ความแม่นยำ ถูกต้อง ในการคำนวณตำแหน่งพิกัด ของ GPS Receiver ที่รับสัญญาณบนโลก   หากภาคกำเนิดสัญญาณเวลา บนดาวเทียมดวงใด เสื่อมสภาพ หรือไม่มีความแม่นยำเพียงพอ ดาวเทียมดวงนั้น จะถูกปลดออกจากการใช้งาน   ตามแผนงาน จะมีดาวเทียม โคจรทั้งหมด 24 ดวง และสำรอง 2 ดวง โดยมีการส่ง ดาวเทียมใหม่ เข้าสู่วงโคจร ตามระยะเวลาที่เหมาะสม เพื่อชดเชย ดาวเทียมที่เสื่อมสภาพ แต่เนื่องจากเทคโนโลยี่ ของดาวเทียม และ ภาคกำเนิดสัญญาณเวลาความแม่นยำสูง มีการพัฒนาตลอดเวลา ทำให้อายุการใช้งาน ของดาวเทียม ยาวกว่าที่คำนวณไว้ ดาวเทียมจำนวนมาก ยังอยู่ในภาวะใช้งานได้ปกติ ถึงแม้จะอยู่ในวงโคจร มานานกว่า 8 ปี (อายุขัยเฉลี่ย ของดาวเทียม) ทำให้ปัจจุบัน มีดาวเทียม อยู่ในวงโคจร ที่ใช้งานได้ จำนวนมากกว่า 30 ดวง ซึ่งเป็นประโยชน์ ต่อผู้ใช้งาน

    หน้าที่สำคัญ ของดาวเทียม GPS มีดังนี้
              1. รับข้อมูล วงโคจรที่ถูกต้องของดาวเทียม (Ephemeris Data) ที่ส่งมาจาก สถานีควบคุมดาวเทียมหลัก (Master Control Station) เพื่อส่งกระจายสัญญาณข้อมูลนี้ ลงไปยังพื้นโลก สำหรับ GPS Receiver ใช้ในการคำนวณ ระยะห่าง (Range) ระหว่างดาวเทียมดวงนั้น กับ ตัวเครื่อง GPS Receiver และตำแหน่งของดาวเทียมบนท้องฟ้า เพื่อใช้คำนวณหา ตำแหน่งพิกัด ของตัวเครื่อง GPS Receiver เอง
              2. ส่งรหัส (Code) และข้อมูล Carrier Phase ไปกับคลื่นวิทยุ ลงไปยังพื้นโลก สำหรับ GPSReceiver ใช้ในการคำนวณ ระยะห่าง (Range) ระหว่างดาวเทียมดวงนั้น กับ ตัวเครื่อง GPS Receiver
             3. ส่งข้อมูลตำแหน่งโดยประมาณของดาวเทียมทั้งหมด (Almanac Information) และข้อมูลสุขภาพ ของดาวเทียม ลงไปยังพื้นโลก สำหรับ GPS Receiver ใช้ในการกำหนดดาวเทียม ที่จะสามารถรับสัญญาณได้

    สถานีควบคุมภาคพื้นดิน MONITORING AND CONTROLLING
              ระบบ GPS ถูกควบคุมโดย กองทัพอากาศ สหรัฐอเมริกา จากสถานีควบคุมหลัก ในรัฐโคโลราโด ซึ่งจะคอยตรวจสอบ ดาวเทียมทุกดวงในระบบ ป้อนคำสั่งควบคุม และป้อนข้อมูล รวมทั้งให้ข่าวสารในการนำร่อง สถานีตรวจสอบภาคพื้นดิน ใช้สายอากาศภาคพื้นดิน ในการควบคุม ดาวเทียม GPS และส่งต่อข้อมูลให้แก่สถานี Master Control เพื่อกำหนดตำแหน่งพิกัดที่แน่นอน ของดาวเทียมแต่ละดวง และปรับปรุงความถูกต้อง ของข้อมูลอยู่ตลอดเวลา   ถ้าดาวเทียมดวงใดเกิดความผิดปกติขึ้น สถานีควบคุมภาคพื้นดิน ก็จะทำการกำหนดสุขภาพ ดาวเทียมดวงนั้นเป็น  "Un- healthy" เพื่อให้ GPS Receiver ทราบว่า ไม่ควรใช้ข้อมูล จากดาวเทียมดวงนี้ ซึ่งเครื่องรับ ก็จะทำการตรวจสอบได้ จากการตรวจสอบสถานะของดาวเทียม และเครื่องก็จะไม่ทำการ รับข้อมูล จากดาวเทียมดวงดังกล่าว แล้วใช้ดาวเทียมดวงอื่น ที่มีความเหมาะสม ในการคำนวณตำแหน่งพิกัดแทน ในบางครั้งดาวเทียมอาจถูกปิดใช้งานเพื่อทำการบำรุงรักษา หรืออาจจะถูกปิดเพื่อเปลี่ยนวงโคจร ตามความเหมาะสม

    GPS Receiver บอก(คำนวณ)ตำแหน่งพิกัดได้อย่างไร
              ดาวเทียม GPS แต่ละดวงจะส่งกระจายสัญญาณ 2 ชนิดอย่างต่อเนื่องได้แก่ สัญญาณ Standard Positioning Service (SPS) ซึ่งใช้สำหรับบุคคลทั่วไป และ สัญญาณ Precise Positioning Service (PPS) ซึ่งใช้สำหรับทางทหาร สัญญาณ SPS เป็นสัญญาณแบบ Spread-Spectrum ที่กระจายสัญญาณด้วยความถี่ 1575.42 MHz สภาพแวดล้อม หรือสัญญาณรบกวนที่เกิดจากอุปกรณ์ไฟฟ้า บนพื้นโลก มีผลกระทบ ค่อนข้างน้อย ต่อสัญญาณดังกล่าว
              สัญญาณ SPS ประกอบด้วยข้อมูลเกี่ยวกับวงโคจร ของดาวเทียม 2 ชนิดคือ ข้อมูล Almanac และข้อมูล Ephemeris ข้อมูล Almanac เป็นข้อมูลที่บอกถึงสภาพของดาวเทียม และตำแหน่งวงโคจรของดาวเทียมทุกดวงในระบบอย่างคร่าวๆ เครื่องรับ GPS จะรับข้อมูล Almanac จากดาวเทียมดวงใดๆที่สามารถรับสัญญาณได้ แล้วใช้ข้อมูลดังกล่าวเพื่อการเลือกรับดาวเทียม ที่สามารถจะใช้ได้ ในการคำนวณตำแหน่งพิกัด ส่วนข้อมูล Ephemeris ประกอบด้วยข้อมูล ที่แม่นยำ โดยละเอียด ของวงโคจรของดาวเทียม แต่ละดวง ที่ทำการรับสัญญาณได้  สัญญาณ SPS จะส่งรหัส (Code) ลงมาด้วย โดยรหัสดังกล่าว จะทำให้ GPSReceiver สามารถคำนวณ เวลาที่สัญญาณ เดินทางจากดาวเทียม มาถึง ตัวเครื่อง GPS Receiver ได้   เมื่อเครื่องทราบเวลาที่เดินทาง และตำแหน่งดาวเทียม (Ephemeris) ก็จะสามารถคำนวณหา ระยะ (Pseudorange) ระหว่างดาวเทียม แต่ละดวง กับ GPS Receiver ได้ เครื่องรับจะทำการรับสัญญญานจากดาวเทียมอย่างน้อย 3 ถึง 4 ดวงในเวลาเดียวกัน เครื่องจะใช้ดาวเทียม 3 ดวง ในการคำนวณหาตำแหน่งพิกัดเพียงอย่างเดียว โดยเมื่อทราบระยะทาง จาก GPS Receiver ถึงดาวเทียม 3 ดวง เครื่องจะสามารถ คำนวณจุดตำแหน่งพิกัด ของตนเองได้ เมื่อกำหนดให้ความสูงคงที่ (ผู้ใช้ต้องป้อนค่าความสูง ที่ทราบ ให้กับเครื่อง) และถ้ารับสัญญาณ จากดาวเทียมได้ 4 ดวง เครื่องจะใช้ดาวเทียม 4 ดวงในการคำนวณ ตำแหน่งพิกัด และความสูงได้ โดยไม่จำเป็น ต้องป้อนค่าความสูง ให้กับเครื่อง

    ความแม่นยำ (ACCURACY) ของตำแหน่งพิกัด ที่คำนวณได้
              โดยทั่วไปแล้วเครื่องรับ GPS ที่ทำงานโดยอาศัยสัญญาณ SPS สามารถคำนวณ ค่าตำแหน่งพิกัด ที่มีความถูกต้อง อยู่ในระยะ 25 เมตร และค่าความถูกต้องของความเร็วอยู่ในระยะ 5 เมตรต่อ วินาที (เครื่องGPS ของ Magellan สามารถคำนวณค่าตำแหน่งพิกัด ที่มีความถูกต้องอยู่ในระยะ 15 เมตร )
    เนื่องจากค่าความถูกต้องที่ได้นี้ จะขึ้นอยู่กับนโยบาย ของรัฐบาลสหรัฐอเมริกา ที่เรียกว่า Selective Availability (SA) เพื่อรักษาความมั่นคงทางทหาร สัญญาณ SA นี้จะทำให้เกิด ค่าความผิดพลาด ขึ้นกับข้อมูล Ephemeris ที่ส่งกระจายมาจากดาวเทียม ส่งผลให้ค่าความผิดพลาด ของค่าตำแหน่งพิกัดที่ได้ มีค่าเพิ่มขึ้นเป็นระยะ 100 เมตร   ในการใช้งานทั่วไปแล้ว ค่าความผิดพลาดในระยะ 100 ก็ดีเพียงพอ
    สำหรับการใช้งาน ที่ต้องการความถูกต้อง ที่มากกว่านี้ สามารถทำได้โดยใช้เทคนิค Differential เพื่อกำจัดผลของ SA ซึ่งทำให้ค่าที่ได้มีความถูกต้องมากขึ้น
              นอกจากนี้ ความถูกต้อง ของตำแหน่งพิกัด ยังขึ้นกับ ชุดของค่าคงที่ ที่เรียกว่า Map Datum ซึ่งค่าเหล่านี้ มีความแตกต่างกัน สำหรับพื้นที่ ในแต่ละพื้นที่   โดยทั่วไป แต่ละประเทศ จะใช้ Map Datum ที่แตกต่างกัน ในการสร้างแผนที่ ของพื้นที่ในประเทศ  ตำแหน่งเดียวกัน บนแผนที่ 2 ฉบับ ที่ใช้ Map Datum ต่างกันในการสร้างแผนที่ จะให้ตำแหน่งพิกัด ที่แตกต่างกัน  ดังนั้น การเทียบตำแหน่งพิกัด ที่ได้จาก GPSReceiver กับตำแหน่งพิกัดจริง ที่ได้จากแผนที่ จึงต้องใช้ Map Datum เดียวกัน  โดยที่ GPS Receiver ส่วนมาก จะสามารถ เปลี่ยน Map Datum ของเครื่องได้หลายแบบ เพื่อให้สามารถนำเครื่องไปใช้ บอกตำแหน่ง เทียบกับแผนที่ ในพื้นที่แต่ละประเทศได้  (เครื่อง GPS ของ Magellan โดยมาก จะมี Map Datum 72 แบบ ให้เลือกใช้ ตามประเทศ โดยรวมถึง Map Datum Thai-Viet ซึ่งใช้ได้กับพื้นที่ ประเทศไทย เวียดนาม และบริเวณ อินโดจีน หลายประเทศ ดังนั้น ถ้าท่านใช้งานเครื่อง ในประเทศ และใกล้เคียง จึงสามารถตั้ง Map Datum ของเครื่อง เป็นแบบ Thai-Viet และไม่จำเป็นต้องใช้ Map Datum อื่นแต่อย่างใด  สำหรับ Map Datum อื่นๆ ที่มีในเครื่อง จะครอบคลุม การใช้งานในประเทศต่างๆ ทั่วโลก เว้นใน บางบริเวณ หรือประเทศ ที่ไม่มีความสำคัญ มากนัก)   สำหรับ การใช้เครื่อง ในการเดินเรือ ในทะเล และ มหาสมุทร จะต้องเลือกใช้ Map Datum WGS-84 ซึ่งเป็น ชุดของค่าคงที่ สำหรับบริเวณ ทะเล  มหาสมุทร และชายฝั่ง ที่ใช้ได้เกือบทุกพื้นที่ ทั่วโลก
              การตั้ง Map Datum ที่ไม่ถูกต้อง ให้กับเครื่อง GPS อาจทำให้ ตำแหน่งพิกัดที่อ่านได้จากเครื่อง ไม่ตรงกับ ตำแหน่งพิกัด ที่ได้จากแผนที่ ความแตกต่างอาจเป็นได้ ตั้งแต่ ไม่กี่เมตร จนมากถึง หลายร้อยเมตร  โดยทั่วไป ถ้าไม่ทราบ ว่าแผนที่ที่ใช้อ้างอิง ทำโดยใช้ Map Datum ใด ให้เลือกตั้ง Map Datum ของเครื่องเป็น WGS-84 แต่ถ้าทราบ Map Datum ของแผนที่ที่ใช้เปรียบเทียบ ก็ให้ตั้ง Map Datum ของเครื่อง GPSเป็นแบบเดียวกัน
    สำหรับประเทศไทย ถ้าตั้ง WGS-84 ให้กับเครื่อง GPS จะทำให้ตำแหน่งพิกัด ที่อ่านได้จากเครื่อง เทียบกับแผนที่ ประเทศไทย ที่อ้างอิงกับ Map Datum แบบ Thai-Viet   มีความแตกต่าง ในแนวราบ ที่ประมาณ 413 เมตร ซึ่งค่อนข้างสูงมาก ดังนั้น ก่อนการใช้เครื่อง GPS ควรตั้งค่า Map Datum ให้ตรงกับแผนที่ ที่จะใช้เปรียบเทียบ ทุกครั้ง

    เทคนิค Differential
              วิธีการ differential positioning เป็นเทคนิคหนึ่ง ในการที่จะทำให้ผู้ใช้ หาค่าพิกัดจากดาวเทียม สามารถที่จะกำจัด ค่าความผิดพลาดที่เกิดขึ้น เนื่องจาก สภาวะแวดล้อม และผลจาก SA ทำให้สามารถที่จะ ใช้เครื่องหาค่าพิกัด ในการคำนวณ หาค่าตำแหน่ง ที่ให้ความแม่นยำสูง โดยมีหลักการ ในการใช้ ค่าความผิดพลาด
    ที่คำนวณได้ ณ ตำแหน่งที่ทราบค่าพิกัดแน่นอนถูกต้อง และทำการป้อนค่าดังกล่าวเข้าไปเพื่อ ทำการแก้ไข ค่าตำแหน่งที่คำนวณ ได้จากเครื่องรับ GPS เครื่องอื่นๆ
              โดยทั่วๆไปแล้ว ค่าความแม่นยำในแนวราบ ของตำแหน่งใดๆ ที่คำนวนได้จากเครื่องรับ GPS จะมีค่าประมาณ 15 เมตร RMS หรือมากกว่า ความหมายของคำว่า 15 เมตร RMS (root-mean square) หมายถึง ถ้าทำการกระจายจุดต่างๆ รอบตำแหน่งที่ถูกต้องเป็น แบบวงกลมโดยมีค่า mean เป็นศูนย์ ค่าความแม่นยำ 15 เมตร RMS จะหมายถึง 63 % ของตำแหน่งที่วัดได้จะอยู่ในระยะ 15 เมตร จากตำแหน่งที่ถูกต้อง
              ค่าความผิดพลาดในการหาตำแหน่งมีอยู่ 2 ประเภท คือแบบที่แก้ไขได้ และแบบที่แก้ไขไม่ได้   ค่าความผิดพลาด แบบที่แก้ไขได้ จะเป็นค่าความผิดพลาดที่เกิดขึ้นเหมือนๆ กัน กับเครื่องรับ GPS ทุกเครื่อง ที่อยู่ในบริเวณเดียวกัน ส่วนค่าความผิดพลาดที่แก้ไขไม่ได้ จะเป็นค่าความผิดพลาด แบบที่ จะไม่มีความสัมพันธ์กันเลย ในระหว่าง
    เครื่องรับทุกเครื่อง ที่อยู่ในบริเวณเดียวกัน

    Correctable errors
              หรือความผิดพลาดแบบที่แก้ไขได้ ข้อมูลความผิดแบบที่แก้ไขได้นี้ จะเกิดขึ้นได้จากหลายสาเหตุได้แก่ Satellite clock error , ephemeris data error และ error จากการหน่วงสัญญาณ ของชั้นบรรยกาศ ionospheric และ tropospheric รวมทั้งค่า error ที่เกิดขึ้นได้จากผลของ SA
              ค่าความผิดพลาด ที่เกิดขึ้นจาก satellite clock และ ephemeris เป็นค่าความผิดพลาด ที่เกิดขึ้นภายในดาวเทียม GPS ค่าความผิดพลาด satellite clock จะเป็นค่าความผิดพลาด เนื่องจากการเปลี่ยนแปลง อย่างช้าๆ ของเวลา ที่ได้จาก Cesium Atomic Clock ภายในดาวเทียม
    ซึ่งจะทำให้เครื่องรับ GPS เกิดการผิดพลาดในการวัด ตำแหน่ง ในขณะที่ทำการวัดแบบ pseudorange ส่วนค่าความผิดพลาด ephemeric นี้ เป็นค่าผิดพลาดที่อยู่ในข้อมูล ที่ถูกใช้โดยเครื่องรับ GPS ในการกำหนด การหาดาวเทียมในอวกาศ
             ค่าความผิดพลาดเนื่องจากชั้นบรรยากาศ lonospheric และ tropospheric เกิดขึ้นเนื่องจาก การเปลี่ยนแปลง ของชั้นบรรยากาศ   ทำให้เกิดการหน่วงเวลา การเดินทางของ สัญญาณที่ส่งจากดาวเทียม   เกิดขึ้นเนื่องจาก การเปลี่ยนแปลง ความหนาแน่นของ electrons ในชั้นบรรยากาศ ionospheric ซึ่งเป็นชั้นบรรยากาศ ที่สัญญาณทะลุผ่าน ชั้นบรรยากาศ ionospheric นั้นเป็นชั้นบรรยากาศ ในส่วนบนสุดของชั้นบรรยากาศโลก ส่วนชั้นบรรยากาศ tropospheric จะเกี่ยวข้องกับความชื้น, อุณภูมิ และความสูง ซึ่งชั้นบรรยากาศนี้ จะมีผล ทำให้เกิดการหน่วงเวลา ได้น้อยกว่าชั้นบรรยากาศ ionospheric
              ค่าความผิดพลาดที่แก้ไขได้ อีกแบบหนึ่ง คือผลของ Selective Availability (SA) ซึ่ง SA
    เป็นมาตรการ ที่กระทรวงกลาโหม สหรัฐ ใช้ในการทำให้ค่าความแม่นยำ ของเครื่องรับ GPS เกิดความผิดพลาดสูงขึ้น โดยการใส่ค่าความผิดพลาด เข้าไปในสัญญาณ GPS ที่จะส่งออกจากดาวเทียม ซึ่งเป็น มาตรการ ที่ทำ เพื่อผลประโยชน์ทางทหาร สำหรับ สหรัฐอเมริกา และกองกำลังพันธมิตร ค่าความผิดพลาดทั้งหมดที่กล่าวนี้
    จะมีความเหมือนกันอยู่อย่างหนึ่งคือ ปริมาณ และทิศทาง ของค่าความผิดพลาด ในเวลาใด เวลาหนึ่ง จะไม่มีการเปลี่ยนแปลง อย่างกระทันหัน ดังนั้น เครื่องรับ GPS 2 เครื่อง ซึ่งอยู่ในระยะห่างกันที่ไม่มากนัก จะได้รับผลกระทบจากค่า ความผิดพลาดในปริมาณและทิศทางที่เท่ากัน หรือใกล้เคียงกัน ดังนั้น เราสามารถ ที่จะทำการหาค่าความผิดพลาดดังกล่าวได้

    Non-Correctable Errors
              ค่าความผิดพลาดแบบที่แก้ไขไม่ได้ เป็นค่าความผิดพลาดที่เครื่องรับ GPS สองเครื่อง ในบริเวณเดียวกัน จะเกิดค่าความผิดพลาดที่ไม่เท่ากัน และค่าความผิดพลาดที่เกิดขึ้น จะไม่มีความสัมพันธ์ใดๆ ต่อกัน แหล่งที่มาของค่า ความผิดพลาดแบบนี้ ได้แก่ ค่าระดับสัญญาณรบกวน ในเครื่องรับ GPS ซึ่งเป็นสิ่งที่หลีกเลี่ยงไม่ได้ ไม่ว่าจะเป็นแบบชนิดใด และค่าความผิดพลาดเนื่องจาก Multipath หรือการรับสัญญาณสะท้อน จากหลายทิศทาง อันเนื่องจากสภาพแวดล้อมรอบๆ บริเวณ ค่าความผิดพลาดแบบนี้ เกิดขึ้นเนื่องจาก เครื่องรับ ได้รับสัญญาณทั้งจาก ดาวเทียมโดยตรง และสัญญาณที่สะท้อนจากสัญญาณดังกล่าว ซึ่งจะสะท้อน จากสิ่งที่มีอยู่รอบข้าง ไม่ว่าจะเป็น ตึก หรือ ภูเขา (เครื่องรุ่น ProMARK ของ Magellan   ได้รับการออกแบบให้ใช้กับ สายอากาศที่ติดมากับเครื่อง และสายอากาศภายนอกเครื่อง ซึ่งได้รับการออกแบบ มาอย่างดี จะลดผลที่เกิดจากลักษณะดังกล่าวนี้ สำหรับสายอากาศแบบ submeter ซึ่งเป็นสายอากาศ แบบพิเศษ ที่ได้รับการออกแบบมา เพื่อลดทอน multipath ซึ่งสายอากาศแบบนี้ จะใช้ในกรณีที่ทำการเก็บข้อมูล carrier phase)  ค่า ความผิดพลาดแบบที่ไม่สามารถแก้ไขได้นี้ ไม่สามารถจะกำจัดได้จากการทำ
    differential แต่ สามารถจะลดได้โดยการทำ position fix averaging

    วันอังคารที่ 10 กรกฎาคม พ.ศ. 2555

    ความรู้ทั่วไปเกี่ยวกับโทรสาร

    หลักการส่งโทรสาร

      1.หลักการทำงานเบื้องต้นของเครื่องโทรสาร
     (Principle of Facsimile Machine)
    ๑.อภิธานศัพท์ (Glossary)
    เครื่องโทรสาร (Facsimile Machine) 
       เครื่องโทรสารนิยมเรียกสั้นๆ ว่า "แฟกซ์"  (FAX) โดยเครื่องทำสำเนาเอกสาร
    ต้นฉบับเดิม จากต้นทางส่งผ่านคู่สายโทรศัพท์ ไปยังปลายทาง ซึ่งเอกสารที่ได้รับ
    ปลายทางจะมีรูปแบบเหมือนกับเอกสารต้นฉบับเดิมจากต้นทาง
    จุดภาพ (Picture Element: Pel) 
      การส่องดูภาพด้วยเลนซ์ขยายที่มีอัตราของการขยายสูงภาพจะประกอบไปด้วยจุดเล็กๆจำนวนมากรวมกันจุดเล็กๆ เหล่านี้เรียกว่าจุดภาพ (PictureElement) ใช้ตัวย่อเป็น Pel แต่โดยทั่วไปนิยมใช้คำย่อเป็น พิกเซล (Pixel) ตามข้อแนะนำโดยคณะกรรมการที่ปรึกษาการโทรเลขและโทรศัพท์ระหว่างประเทศ ของสหภาพโทรคมนาคม ระหว่างประเทศ (ITU CCITT Recommendation) โดยรายละเอียดฃองภาพจะสูงขึ้นตามจำนวนจุดภาพที่เพิ่มขึ้น ซึ่งจะแสดงถึงคุณภาพที่ดีของภาพนั้น
    โครงข่ายข้อมูลสาธารณะแบบสลับวงจร
    (Circuit Switched Public data Network: CSPDN) 
      โครงข่ายที่องค์กร หรือบริษัทใดๆ ได้จัดตั้งขึ้น เพื่อให้บริการแก่บุคคล องค์กรหรือบริษัทอื่นที่ไม่ได้มีโครงข่ายเป็นของตนเองทำงานโดยการค้นหาวงจรที่ว่างเพื่อใช้เป็นเส้นทางผ่านของสัญญาณ(Physical Path) ของการส่งข้อมูลจากต้นทางถึงปลายทาง

    การแปลงสัญญาณ
    การแปลงสัญญาณอนาล็อก-ดิจิตอล
      สัญญาณที่ใช้ในอุปกรณ์อิเลคทรอนิคส์ มี 2 ชนิด คือ สัญญาณอนาล็อก และสัญญาณดิจิตอล สัญญาณอนาล็อก จะใช้ใน อุปกรณ์ทั่วๆ ไป และใช้ในการควบคุมแบบเก่า 
      ในปัจจุบันมีไมโครโปรเซสเซอร์ และไมโครคอนโทรลเลอร์ เข้ามาช่วยในการควบคุมอุปกรณ์ต่างๆมากมายซึ่งทำให้การควบคุมนั้นทำได้ง่ายและรวดเร็วยิ่งขึ้นแต่ในการควบคุมนั้นเราจำเป็นต้องใช้สัญญาณดิจิตอลในการติดต่อกับไมโครโปรเซสเซอร์หรือไมโครคอนโทรลเลอร์  แต่ในความเป็นจริงนั้น เราใช้สัญญาณอนาล็อกในการควบคุม ดังนั้นเราจึงจำเป็น ต้องมีการเปลี่ยนสัญญาณอนาล็อก เป็นสัญญาณดิจิตอล แล้วจึงนำสัญญาณนั้นเข้ามาสู่ไมโครโปรเซสเซอร์ หรือไมโครคอนโทรลเลอร์ เพื่อใช้ควบคุมระบบ
    ต่อไป แม้ว่าสัญญาณอนาล็อกนั้นมีความแน่นอน และแม่นยำสูง แต่สัญญาณอนาล็อกนั้นก็ควบคุมได้ยาก เนื่องจากในสภาพแวดล้อม มีสัญญาณรบกวนอยู่มาก  และการที่จะทำให้ การควบคุมแบบอนาล็อก มีความสามารถควบคุม เท่ากับการควบคุมแบบดิจิตอลนั้น ทำได้ยาก เนื่องจากวงจรควบคุมแบบ อนาล็อกจะต้องมีความซับซ้อนสูงอย่างไรก็ตาม สัญญาณดิจิตอลก็ไม่สามารถทดแทนความละเอียดของสัญญาณอนาล็อกได้อย่างสมบูรณ์ แต่ทำให้การควบคุมนั้นทำให้ง่าย และสะดวกยิ่งขึ้น 
     Counting Converter เป็นวิธีที่ง่ายที่สุดของการแปลงสัญญาณอนาล็อก เป็นสัญญาณดิจิตอล โดยใช้อัลกอริทึม การนับค่าเพิ่มขึ้นเรื่อยๆ แล้วนำผลที่ได้จากการนับไปเปรียบเทียบกับค่าที่ต้องการที่ตั้งไว้ ลักษณะการทำงานเป็นดังรูป

    แฟกซ์
    ความหมายของ Faxing
          Faxing  หรือ  Fax Online คือ ระบบที่ให้บริการข้อมูลทางโทรสารอัตโนมัติ สามารถใช้งานร่วมกับระบบE-mail หรือใช้งานผ่านทางระบบ Internet ได้ เพื่อเพิ่มความสะดวกให้แก่ผู้ใช้ เนื่องจากสามารถทำการรับ ส่งแฟ็กซ์ได้ตลอดทุกที่ ทุกเวลา แฟ็กซ์ที่เข้ามาสามารถส่งตรงไปยังผู้ใช้แต่ละคนได้ทันที โดยไม่ต้องมีเครื่องแฟกซ์หลายเครื่อง และไม่จะเป็นต้องเข้าคิวเพื่อรอรับ-ส่งแฟ็กซ์ เนื่องจากสามารถส่งได้พร้อมกันหลายคน ทำให้เพิ่มประสิทธิภาพและความรวดเร็วในการทำงาน
    คุณสมบัติของการ รับ-ส่งโดย Fax mail
           - สามารถรับส่ง fax ทาง e-mail โดยผู้รับไม่จำเป็นต้องมีเบอร์โทรศัพท์และเครื่อง fax - สามารถรับส่ง fax ทาง Web base Interface ได้
          - สามารถส่งเอกสารที่ได้รับส่งต่อไปยัง e-mail หรือหมายเลขเครื่อง fax เครื่องอื่น
          - สามารถส่งเอกสารออกได้หลายหมายเลขในเวลาเดียวกัน (Fax broadcast)
    - สามารถส่ง  fax ให้ผู้ที่โทรเข้ามาจากเครื่อง fax เพื่อเลือกหัวข้อเอกสารที่ต้องการและกด start เพื่อรับเอกสารได้ทันที (Fax on demand
      - สามารถส่ง Fax ให้ผู้ที่โทรเข้ามาจากเครื่องโทรศัพท์ เพื่อให้ระบบส่งเอกสารที่ต้องการไปยังหมายเลขโทรสารผู้โทรเข้ามาฝากเอาไว้โดยอัตโนมัติ
    - สามารถเรียกดูเอกสารก่อนที่จะทำการพิมพ์เฉพาะที่ต้องการ
    - สามารถแจ้งเตือนกรณีที่มีเอกสารเข้ามาใหม่
    - เก็บบันทึกและรายงานสถิติการรับเอกสารของผู้โทรเข้าและการส่งเอกสารกลับได้
    - มีระบบป้องกันเอกสารในการตรวจเช็ค Fax


    วันพฤหัสบดีที่ 5 กรกฎาคม พ.ศ. 2555

    iphone 4 มาพร้อมกับ RAM 512MB


    ข่าวไอที : เนื่องจากการเปิดตัวครั้งล่าสุดของ iPhone 4 ทางแอปเปิ้ล (Apple) พยายามจะปกปิดข้อมูลทางด้านเทคนิคบางอย่างเกี่ยวกับไอโฟนรุ่นใหม่ ทางบริษัทยังไม่เคยโฆษณา หรือแม้แต่เผยแพร่ข้อมูลเกี่ยวกับหน่วยความจำ (RAM) ที่อยู่ในเครื่อง ซึ่งผู้บริโภคบางกลุ่มอาจจะต้องการทราบเรื่องราวเหล่านี้บ้างเหมือนกัน
    ย้อนกลับไปก่อนหน้านี้ iPhone 3G จะมาพร้อมกับหน่วยความจำ 128MB ในขณะที่ iPhone 3GS มีการเพิ่มหน่วยความจำขึ้นเป็นสองเท่าคือ 256MB ซึ่งเท่ากับ ไอแพด ( iPad ) ทีมีหน่วยความจำ 256MB เช่นเดียวกัน คำตอบง่ายๆ ที่ว่าทำไมแอปเปิ้ลไม่สนับสนุนให้ iOS4 ที่สามารถทำงานแบบมัลติทาสกิ้งบน iPhone 3G ก็คือ “หน่วยความจำ” ในเครื่องไม่พอนั่นเอง
    อย่างไรก็ตาม ข่าวลือที่ออกมาก่อนหน้าการเปิดตัว iPhone 4 อ้างว่า จะมีการอัพเเกรดหน่วยความจำอีกครั้งในไอโฟนรุ่นใหม่นี้ โดยจะขยับ ขึ้นไปที่ 512MB หรือสองเท่าของ 3GS และ iPad ซึ่งขัดแย้งกับภาพการชำแหละ iPhone 4 ที่หลุดออกมาบนเน็ต นักวิเคราะห์ต้นแบบแสดงให้เห็นว่า ในเครื่องต้นแบบมีหน่วยความจำ 256MB แต่ตัวเลขหน่วยความจำ 512MB ของ iPhone 4 จะสอดคล้องกับรายงานของ Digitimes ที่เปิดเผยเมื่อวันที่ 17 พฤษภาคมที่ผ่านมา ซึ่งยืนยันข้อมูลถูกต้องหลายประเด็นไม่ว่าจะเป็น หน้าจอที่บางลงแต่ความละเอียดสูง 960×640 พิกเซล ก่อนที่จะตบท้ายด้วยหน่วยความจำ 512MB ล่าสุดมีข่าวออกมาว่า ในช่วงงาน WWDC ทางแอปเปิ้ลได้มีการยืนยันว่า หน่วยความจำในiPhone 4 มี 512MB จริง
    หน่วยความจำที่เพิ่มขึ้นมานั้นก็เพื่อช่วยให้สมรรถนะการทำงานโดยรวม และระบบมัลติทาสกิ้งของ iPhone 4 ดีขึ้น ซึ่งมันเป็นตัวอธิบายได้อีกด้วยว่า ทำไม iMovie แอพฯที่แอปเปิ้ลเปิดตัวในงาน WWDC จะเล่นได้เฉพาะบน iPhone 4เท่านั้น (3GS และ iPad หมดสิทธิ์) เพราะเป็นไปได้อย่างมากที่ว่า แอพฯดังกล่าวต้องการหน่วยความจำมากกว่าปกตินั่นเอง

    วันพุธที่ 27 มิถุนายน พ.ศ. 2555

    มอเตอร์ดีซี Brushless


    มอเตอร์ดีซีไร้แปลงถ่าน Brushless DC Motor (BLDC)
    อีซีมอเตอร์ (EC MOTOR-Electronically Commutated) เป็นมอเตอร์ไฟฟ้าที่จัดแปลงกระแสไฟฟ้าโดยระบบอิเลกโตรนิก
    จัดเป็นมอเตอร์ดีซีไร้แปลงถ่าน (Brushless DC Motor-BLDC)ชนิดหนึ่ง
                             รูปอีซีมอเตอร์
    ในระบบทำความเย็นโดยทั่วไป นิยมใช้มอเตอร์แบบเชดเด็ดโพล (SHADED POLE) หรือที่เรียกสั้นๆว่า คิวมอเตอร์
    เหตุที่นิยมก็เนื่องจากมีราคาถูก เป็นมอเตอร์ไฟฟ้าที่มีประสิทธิภาพต่ำมาก
                               รูปมอเตอร์แบบเชดเด็ดโพล

                  อีซีมอเตอร์ที่ผลิตอยู่ในปัจจุบันมีหลายรูปแบบ เหมาะสมกับระบบเครื่องทำความเย็นที่จำเป็นต้องใช้อยู่ในจุดต่างๆ
                  ข้อดีของอีซีมอเตอร์ พอกล่าวได้ดังนี้
                  1. ประสิทธิภาพสูง เมื่อใช้ทดแทนมอเตอร์แบบเชดเด็ดโพล ที่ใช้กับคอนเด็นเซอร์ ประหยัดค่าไฟฟ้า คุ้มค่ากับการลงทุน
                  2. อีซีมอเตอร์ บางรุ่นที่ใช้กับคอนเด็นเซอร์ จะหมุนกลับทางเมื่อคอมเพรสเซอร์หยุด ช่วยไล่ฝุ่นที่คอยล์
                      รูปแสดงเมื่อใช้ใบพัดลมขนาดต่างๆ  (กดที่นี่ เพื่อดูรายละเอียด)
                  3. เมื่อใช้อีซีมอเตอร์ในชุดคอยล์เย็น ความร้อนที่เกิดจากตัวมอเตอร์ต่ำกว่า มอเตอร์แบบเชดเด็ดโพล คอมเพรสเซอร์
                      ทำงานน้อยลง ระบบโดยรวมยิ่งมีประสิทธิภาพสูงขึ้น
                  4. ความเร็วรอบของ อีซีมอเตอร์ คงที่ ไม่ผันแปรตามความต่างศักย์ไฟฟ้าเหมือน มอเตอร์แบบเชดเด็ดโพล การทำงานของ
                      ระบบสารทำความเย็นจึงเสถียรกว่า
                  5. อีซีมอเตอร์บางรุ่น ถูกออกแบบให้มี่ความเร็วรอบคงที่มาก ไม่เกิดเสียงรบกวนเมื่อมีการใช้งานมอเตอร์หลายตัวพร้อมๆกัน









     โครงสร้างภายในมอเตอร์ แบบมีแปรงถ่าน (Brush Motor) และไม่มีแปรงถ่าน (Brushless Motor หรือที่เรียกกันว่า HubMotor)
    โครงสร้างและส่วนประกอบหลักของมอเตอร์เกียร์แบบมีแปรงถ่าน (DCMotor 24V250W)DC Motor แบบมีเกียร์ จะช่วยให้ได้แรงบิดที่สูงขึ้น ควรเลือกเกียร์ที่เป็นเหล็ก จะดีกว่าเกียร์พลาสติกโครงสร้างของ HubMotor ด้านสายออกเมื่อถอดฝาออกมา ก็จะเห็นขดลวด และแม่เหล็กติดตรงขอบดุมล้อมากมาย มีสายไฟหลัก
    เข้าขดลวดทั้ง 3 ชุด
    โครงสร้างของ HubMotor อีกด้านหนึ่ง เมื่อถอดฝาออกมา ก็จะเห็นเซนเซอร์สนามแม่เหล็ก (Hall Sensor) จำนวน 3 ตัววางไกล้กันตามรูป บางรุ่นก็วางห่างกัน 120 องศา
          
            อ้าว!! แล้วเราจะเลือกมอเตอร์ อย่างไรล่ะขนาดเท่าไร กี่โวล์ท กี่วัตต์ รอบ และแรงบิดเท่าไรดี ถ้านึกถึงมอเตอร์ก็ดูหลักๆ 2 อย่างครับคือ
     แรงบิด  และความเร็วรอบ กล่าวคือเค้ามีสูตรอยู่ว่า...

             กำลัง (W) = 2 x Pi x ความเร็วรอบต่อวินาที (rps) x แรงบิด (n.m)

      แรงบิด คือ แรงที่เรากระทำให้วัตถุเคลือนที่จากจุดหมุนเป็นระยะเท่าไร ยกตัวอย่างนึกถึงการขันน็อต ที่จุดหมุนจะเกิดแรงบิด และเกิดแรงกระทำที่ปลายค้ามประแจดังรูป ซึ่งระยะห่างจากจุดหมุนไปถึงแนวแรงคือระยะ r ถ้าระยะนี้ยิ่งมากแรงบิดก็จะสูงเช่นกัน กลับมาถึงล้อรถจักรยานกัน ล้อจักรยานเกิดแรงบิดที่ศูนย์กลางของล้อหรือที่ฟรีสเตอร์นั่นเอง หากล้อมีขนาดใหญ่ขึ้นก็จะต้องใช้แรงบิดสูงขึ้นตามไปด้วย แรงบิดมีหลายหน่วย ที่เรียกกัน แต่ในที่นี้ขอใช้หน่วย n.m (นิวตัน.เมตร) กล่าวคือเป็นหน่วยของแรงผลัก ของแกนหมุนใดๆ ที่ผลักวัตถุให้เคลื่อนที่ เช่น 1 n.m คือแรงผลักวัตถุหนัก 1 นิวตัน ในรัศมี 1 เมตร (1 กก. เท่ากับ 9.8 นิวตัน) สูตรของแรงบิดคือ F (แรงต้านรวม) x r (รัศมีหรือระยะจากจุดหมุน)ซึ่ง F นั้นรวมถึงน้ำหนักโหลด แรงเสียดทาน แรงต้านจากอากาศ แรงต้านจากการหมุน เยอะเยอะ งง ไปหมด ซึ่งเด่วดูได้จากสูตร ผมสรุปและทำไว้เป็นไฟล์แล้ว (อ้างอิงมากจากคนอื่นเค้าอีกที) สรุปได้ว่ามอเตอร์หากมี "แรงบิดสูง" จะช่วยให้รับภาระได้มากด้วยนั่นเอง

      ความเร็วรอบ คือ ความเร็วรอบ
    มอเตอร์ส่วนใหญ่คิดเป็น รอบต่อนาที (RPM) หากไม่ทดเกียร์ข้างใน ความเร็วรอบสูงมากว่า 3,000 รอบต่อนาที ซึ่งหากทดเกียร์แล้วความเร็วก็ลดลงมาตามสัดส่วนที่ระบุ ยกตัวอย่าง หากความเร็วรอบที่มอเตอร์ 3,850 รอบต่อนาทีและมีแรงบิด 1.1 n.m อัตราส่วนทดเกียร์ 9.78 : 1 ความเร็วรอบหลังจากทดแล้วจึงเหลือ 393 รอบต่อนาที ซึ่งแรงบิดที่ปลายเฟืองก็จะสูงขึ้นเช่นกัน คือ 10.8 n.m ความเร็วและแรงบิดนี้ เราสามารถนำไปคำนวณหาความเร็วและน้ำหนักบรรทุกของรถเราได้เลย ซึ่งแล้วแต่การทดเกียร์และขนาด วงล้อของแต่ละคันด้วย..

      ส่วนเรื่องใช้กี่วัตต์นั้นหากเราได้ความเร็วและแรงบิดตามต้องการแล้วก็จะได้ขนาดกำลังวัตต์เองครับ ส่วนกี่โวลท์นั้นก็แล้วแต่ผู้ใช้ครับหาก เช่นหากเลือกได้ 350W ถ้า 36V ก็ใช้แบต 3 ลูก และกินกระแสประมาณ 9.7A แต่หากเลือก 24V ก็ใช้แบต 2 ลูก กินกระแสประมาณ 14.5A ซึ่ง หากใช้แบตขนาด Ah เท่ากัน รุ่น 24V ไฟก็จะหมดก่อนเพราะกินกระแสสูงกว่า...

    ชุดควบคุม HubMotor (Brushless)
       

    ภาค Driver

      IC เบอร์ MC33033 เป็นไอซีสำเร็จรูปถูกออกแบบมาเพื่อใช้งานกับมอเตอร์ไม่ใช้แปรงถ่าน (Brushless DC Motor) หรือ ที่เราเรียกกันว่า HubMotor การใช้งานหลักๆ ก็ดู DataSheet ก็จะเข้าใจดียิ่งขึ้นครับ หากกล่าวโดยสรุป
          ขา 4,5,6 เป็นขา Hall Sensor Encoder เข้า (สายเส้นเล็ก สีเหลือง เขียว และน้ำเงิน ที่ตัวมอเตอร์นั่นล่ะ)
          ขา 2,1,20 เป็นขาขับเกทชุด" บน" ของภาค Power Output
          ขา 15,16,17 เป็นขาขับเกทชุด "ล่าง" ของภาค Power Output
          ขา 9 เป็นขาต่อกับคั่นเร่ง
          ขา 14 เป็นไฟบวก 30V
          ขา 13 เป็นกราวด์
          ขา 13,18 เป็น Option (เดินหน้า/ถอยหลัง,เลือก Phase Encoder)
          ขา 19 เป็น Output Enable Active Low ต้องต่อลงกราวด์


    ภาคขับ Gate Power Mosfet และ ภาค Power Output

       เนื่องจากแรงดันจากไอซี MC33033 ไม่สามารถขับเกทเพาเวอร์มอสเฟตทั้ง 6 ตัวได้ จึงต้องใช้ IC TLP250 ทำหน้าที่ขับขาเกทของเพาว์เวอร์มอสเฟท ทั้งหมดจำนวน 6 ตัวอย่างดังรูปด้านล่าง (ต้องสร้างวงจร IC TLP250 จำนวน 6 ชุดเพื่อขับเกททของเพาว์เวอร์มอสเฟท แต่ละตัวคือ Bottom Drive 3 ตัวและ Top Drive 3 ตัว  

      


    รูปคลื่น Timming Diagram ของแต่ละองศาภาค Driver Gate Power Mosfet ใช้ IC Opto Couple เบอร์ TLP250
    ภาค Power Output ใช้ PowerM osfet จำนวน 6 ตัวเพื่อควบคุมแต่ละเฟส
    Timming Diagram รูปคลื่นของไอซี MC33033 แต่ละจุดเมื่อโรเตอร์มอเตอร์หมุนที่องศาที่แตกต่างกัน 
        วงจรภาค Power Output ใช้เพาเวอร์มอสเฟท 6 ตัว (Top และ Bottom) เพื่อทำหน้าที่รับสัญญาณจากภาค Driver มาขับขดลวดของมอเตอร์ทั้ง 3 เฟส 
     
    ตัวอย่างการทำงานของ HubMotor แม่เหล็ก 2 ชุดตัวอย่างการทำงานของ HubMotor แม่เหล็ก 4 ชุดภาพตัวอย่างสนามแม่เหล็กของ HubMotor ในขณะหมุน
       ตัวอย่างการทำงานของ Hubmotor แบบพื้นฐานแม่เหล็ก 2 ขั้ว คลิกที่รูป    ตัวอย่างการทำงานของ Hubmotor แบบแม่เหล็ก 4 ขั้ว คลิกที่รูป (หากมีขั้วแม่เหล็กมาก ก็จะมีขดลวดทองแดงมากเช่นกัน)  รูปจำลองสนามแม่เหล็ก ขณะมอเตอร์ทำงาน โดยความเข้มของสนามแม่เหล็กดูได้จากแถบสีมุมบนขวา