วันอาทิตย์ที่ 5 กรกฎาคม พ.ศ. 2558

โปรแกรม Mindstorms NXT

โปรแกรม Mindstorms NXT

การใช้งานโปรแกรม Lego Mindstorms Education NXT

  • การติดตั้งโปรแกรม NXT
  • การเชื่อมต่อ NXT
  • รู้จักกับโปรแกรม NXT-G
  • โปรแกรมแรกของฉัน
  • รู้จักกับบล๊อกต่างๆ
    • Move Block
    • Record / Play Block
    • Sound Block
    • Display Block
    • Wait Block
    • Loop Block
    • Switch Block

      การติดตั้งโปรแกรม NXT

      ในชุดหุ่นยนต์ NXT Mindstorms Education เราสามารถเขียนโปรแกรมควบคุมการทำงานของอุปกรณ์ตามคำสั่งต่าง ๆ ได้ ในบทเรียนนี้เราจะใช้โปรแกรม LEGO MINDSTORMS Education NXT เรียกอีกอย่างหนึ่งว่า NXT-G ซึ่งชุดมาตรฐานจะมีโปรแกรมมาให้ เราสามารถติดตั้งไปยังคอมพิวเตอร์ที่มีระบบปฎิบัติการทั้ง windows หรือ Macintosh ได้
      ดับเบิ้ลคลิ๊กที่ไฟล์ Autorun เพื่อเปิดโปรแกรมติดตั้ง


      เลือกภาษาอังกฤษโดยคลิกที่ปุ่ม English


      รอให้โปรแกรมติดตั้งโหลดเสร็จ


      กดที่ปุ่ม Next เพื่อไปยังหน้าถัดไป


      ยอมรับข้อตกลง แล้วกดที่ I accept the License Agreement(s) แล้วกดปุ่ม Next


      กดปุ่ม Next เพื่อเริ่มการติดตั้ง


      โปรแกรมจะทำการติดตั้งโปรแกรมลงบนคอมพิวเตอร์
      ให้รอจนการติดตั้งเสร็จสิ้น โปรแกรมติดตั้งจะพาไปยังหน้าถัดไป


      การติดตั้งเสร็จเรียบร้อย ให้กดปุ่ม Finish เพื่อปิดโปรแกรมติดตั้ง


      การเปิดโปรแกรมสามารถทำได้สองวิธี คือ
      1. เปิดจาก Start Menu โดยคลิกที่ปุ่ม Start => All Programs => LEGO MINDSTORMS Edu NXT =>LEGO MINDSTORMS Edu NXT
      2. เปิดจาก Desktop โดยคลิกสองครั้งที่ไอค่อน MINDSTORMS Edu NXT  ที่มา : http://krunisit.rwb.ac.th/nxtg.html

แนะนำอุปกรณ์ตรวจวัด (Sensor)

แนะนำอุปกรณ์ตรวจวัด (Sensor)

  • Touch Sensor
  • Sound Sensor
  • Light Sensor
  • Ultrasonic Sensor
  • Interactive Servo Motor

    ouch Sensor

    Touch Sensor คือ อุปกรณ์ตรวจวัดที่ใช้ลักษณะการตอบสนองโดยการกดปุ่ม

    การนำไปใช้งาน

    เราสามารถใช้ Touch Sensor ในการตรวจจับการชน หรือใช้เป็นปุ่มในการเริ่มทำงานของโปรแกรม

    การดูค่าของ Touch Sensor

    เราสามารถดูค่าของ Touch Sensor ได้ที่เมนู View
    หากบนหน้าจอแสดงค่า 0 แปลว่า Touch Sensor ไม่ถูกกด
    หากบนหน้าจอแสดงค่า 1 แปลว่า Touch Sensor ถูกกด

    Sound Sensor

    Sound Sensor ทำหน้าที่ตรวจจับเสียงเป็นระดับเดซิเบล(Decibel)
    สามารถตรวจจับเสียงได้ทั้ง dB และ dBA
    • dBA คือ เสียงที่มนุษย์สามารถได้ยิน
    • dB คือ เสียงทั้งหมด รวมถึงเสียงที่สูงหรือต่ำไปเกินกว่าที่มนุษย์จะได้ยินด้วย
    Sound Sensor สามารถตรวจจับเสียงได้สูงสุด 90 dB
    การอ่านค่าของ Sound Sensor จะแสดงเป็นเปอร์เซ็นต์ (%)

    ระดับเสียง

    • 4 - 5% - ห้องเงียบๆ
    • 5 - 10% - มีเสียงคนพูดอยู่ไกลๆ
    • 10 - 30% - เสียงเมื่อมีคนคุยกันในระยะ 1 เมตร หรือเปิดเพลงไม่ดังมาก
    • 30 - 100% - เสียงเพลงดังมาก หรือมีคนมาตะโกนใส่เซ็นเซอร์

    การนำไปใช้งาน

    เราสามารถใช้ Sound Sensor ในการตรวจจับเสียง เช่น การตบมือ

    การดูค่าของ Sound Sensor

    เราสามารถดูค่าของ Sound Sensor ได้ที่เมนู View
    1. เข้าไปที่เมนู View แล้วเลือก Sound dB
    2. ลองส่งเสียงใส่ Sound Sensor
    3. อ่านค่าบนหน้าจอ NXT

      Light Sensor

      Light Sensor ทำหน้าที่ตรวจจับความมืดและแสงสว่าง

      การนำไปใช้งาน

      เราสามารถใช้ Light Sensor ในการวัดสีของสิ่งของ หรือใช้ในการเดินตามเส้น

      การดูค่าของ Light Sensor

      เราสามารถดูค่าของ Light Sensor ได้ที่เมนู View
      หากเลือก Reflected Light จะทำให้ Light Sensor ส่องแสงสีแดง
      และวัดแสงที่สะท้อนกลับมา เราสามารถใช้ในการตรวจจับสีได้
      แต่ถ้าเลือก Ambient Light จะไม่มีแสงออกมาจาก Light Sensor
      โดย Light Sensor จะวัดแสงโดยรอบของมันเท่านั้น
      เราสามารถนำมาใช้ตรวจสอบความสว่างและความมืดของห้องได้

      Ultrasonic Sensor

      Ultrasonic Sensor ทำหน้าที่ตรวจจับวัตถุที่อยู่ตรงหน้ามัน
      สามารถวัดระยะห่างจากตัวเซ็นเซอร์กับวัตถุได้
      Ultrasonic Sensor ทำงานโดยใช้หลักการเดียวกันกับค้างคาว นั่นก็คือ ตรวจวัดระยะห่าง โดยการส่งคลื่นเสียงออกไป แล้ววัดระยะเวลาที่คลื่นเสียง สะท้อนกลับมา โดย Ultrasonic Sensor สามารถวัดระยะทางได้ทั้งในหน่วยนิ้ว และหน่วยเซ็นติเมตร และสามารถวัดระยะห่างจากวัตถุได้ตั้งแต่ 0 - 2.5 เมตร โดยมีความคลาดเคลื่อนเพียง ± 3 เซ็นติเมตรเท่านั้น
      วัตถุแข็งที่มีขนาดใหญ่ จะทำให้อ่านค่าได้ดีที่สุด ส่วนวัตถุนุ่มๆ หรือมีพื้นผิวโค้ง หรือบางมาก จะทำให้เซ็นเซอร์ตรวจจับได้ยาก

      การนำไปใช้งาน

      เราสามารถใช้ Ultrasonic Sensor ในการหลบหลีกสิ่งกีดขวาง

      การดูค่าของ Ultrasonic Sensor

      เราสามารถดูค่าของ Ultrasonic Sensor ได้ที่เมนู View
      1. เข้าเมนู View, แล้วเลือกเมนูที่เป็นสัญลักษณ์ Ultrasonic แล้วเลือกพอร์ตที่เสียบเซ็นเซอร์นี้ไว้
      2. ลองนำวัตถุต่างๆ มาไว้หน้าเซ็นเซอร์
      3. อ่านค่าจากหน้าจอของ NXT

        Interactive Servo Motor

        Interactive Servo Motor ทำให้หุ่นยนต์สามารถเคลื่อนที่ได้
        นอกจากนี้ ยังมีเซ็นเซอร์วัดการหมุนของมอเตอร์ในตัว ทำให้ หุ่นยนต์ NXT สามารถควบคุมการหมุนได้อย่างแม่นยำ เซ็นเซอร์วัดการหมุนของมอเตอร์สามารถวัดการหมุนของมันได้เป็นองศา หรือนับเป็นรอบก็ได้ โดยที่การหมุน 1 รอบเท่ากับ 360 องศา

        การนำไปใช้งาน

        เราสามารถใช้ Interactive Servo Motor ในการขับเคลื่อนหุ่นยนต์ และบังคับส่วนประกอบอื่นๆ ของหุ่นยนต์

        การดูค่าของ Interactive Servo Motor

        เราสามารถดูค่าของ Interactive Servo Motor ได้ที่เมนู View
        1. เข้าเมนู View, แล้วเลือกเมนู Motor Rotations
        2. ประกอบล้อดังรูปต่อเข้ากับมอเตอร์
        3. ทำการหมุนล้อ
        4. อ่านค่าจากหน้าจอของ NXT                                              ที่มา :http://krunisit.rwb.ac.th/sensors.html#last

Try Me

Try Me

ในเมนู Try Me จะมีโปรแกรมต่างๆ ที่มากับ NXT ใช้เพื่อทดลองต่างๆ เกี่ยวกับมอเตอร์และเซ็นเซอร์
มาลองรันโปรแกรม Try-Touch กันดูดีกว่าว่าจะเกิดอะไรขึ้น
  1. เข้าโปรแกรม เลือกโปรแกรม Try-Touch
  2. ลองกดปุ่มที่ Touch Sensor
  3. โปรแกรมจะทำงานไปเรื่อยๆ ให้กดปุ่มสีเทาเข้มเพื่อจบการทำงานของโปรแกรม

    View

    เมนู View ใช้เพื่อดูค่าของเซ็นเซอร์และมอเตอร์บน NXT
    1. เลือกชนิดของเซ็นเซอร์
    2. เลือกพอร์ต
    3. ดูค่าของเซ็นเซอร์

      Settings

      ในเมนู Settings สามารถตั้งค่าต่างๆ ของ NXT เช่นความดังของลำโพง ตั้งเวลาการปิดเครื่อง หรือจะลบโปรแกรมทั้งหมดออกจาก NXT ก็ได้
      • Sleep Mode : สามารถตั้งให้ NXT ปิดเองเมื่อไม่ใช้ เพื่อประหยัดพลังงาน
      • Change Volume : เลือกความดังของลำโพง Loudspeaker ตั้งแต่ 0 (ปิดเสียง) จนถึง 4 (ดัง)
      • Delete All Program : สามารถลบโปรแกรมทั้งหมดบน NXT ได้แก่โปรแกรมใน Software Files, NXT Files และ Try Me

        Bluetooth

        ในเมนู Bluetooth สามารถตั้งค่าการเชื่อมต่อกับอุปกรณ์ Bluetooth อื่นๆ เช่น NXT ตัวอื่นๆ โทรศัพท์มือถือ หรือคอมพิวเตอร์ นอกจากนี้ยังสามารถใช้ดาวน์โหลดโปรแกรมโดยไม่ต้องใช้สวย USB ได้อีกด้วย                                                                                                       ที่มา :  http://krunisit.rwb.ac.th/tryme.html#last

My Files

My Files

ในเมนู My Files จะเก็บโปรแกรมทั้งหมดที่เราเคยสร้างบน NXT หรือดาวน์โหลดมาจากคอมพิวเตอร์ ประกอบด้วยเมนูย่อย 3 เมนู
  1. Software Files เก็บโปรแกรมที่เราเขียนจากโปรแกรมคอมพิวเตอร์แล้วดาวน์โหลดมายัง NXT
  2. NXT Files โปรแกรมที่เราสร้างบน NXT โดยไม่ใช้คอมพิวเตอร์
  3. Sound Files ไฟล์เสียงที่เราเคยใช้เป็นส่วนประกอบของโปรแกรม

    NXT Program

    เราสามารถเขียนโปรแกรมอย่างง่ายบน NXT โดยไม่จำเป็นต้องใช้คอมพิวเตอร์ ด้วยการใช้ฟังก์ชั่น NXT Programสามารถเรียกใช้ได้จากเมนูหลักของ NXT เป็นการเขียนโปรแกรมให้ทำงานตามลำดับ 5 ขั้นตอน ก่อนการทดลองโปรแกรม ให้ต่อมอเตอร์ และเซ็นเซอร์ตามนี้
    • พอร์ต 1: เซ็นเซอร์สัมผัส (Touch Sensor)
    • พอร์ต 2: เซ็นเซอร์เสียง (Sound Sensor)
    • พอร์ต 3: เซ็นเซอร์แสง (Light Sensor)
    • พอร์ต 4: เซ็นเซอร์วัดระยะทาง (Ultrasonic Sensor)
    • พอร์ต B: มอเตอร์ซ้าย
    • พอร์ต C: มอเตอร์ขวา

      NXT Program

      ตัวอย่างการทดลองเขียนโปรแกรมง่าย ๆ ด้วย NXT-Program
      โปรแกรมนี้ หุ่นยนต์จะเดินหน้า และถอยหลัง เมื่อกดปุ่มที่ Touch Sensor
      ขั้นแรก หุ่นยนต์จะเดินหน้าจนกว่า Touch Sensor ถูกกด เมื่อ sensor ถูกกดแล้วปล่อยหุ่นยนต์ จะเดินถอยหลัง พอ Touch Sensor ถูกกดอีก หุ่นยนต์จะเดินไปข้างหน้าอีก โปรแกรมจะวนซ้ำแบบนี้ไปเรื่อยๆ จนกว่าเราจะปิดโปรแกรม ลองเข้าเมนู NXT Program แล้วตั้งโปรแกรมตามนี้
      1. เลือก Forward เพื่อให้หุ่นยนต์เดินหน้า
      2. เลือก Touch เพื่อให้หุ่นยนต์รอการกดปุ่ม
      3. เลือก Backward เพื่อให้หุ่นยนต์เดินถอยหลัง
      1. เลือก Touch เพื่อให้หุ่นยนต์รอการกดปุ่ม
      2. เลื่อก Loop เพื่อให้โปรแกรมกลับไปทำงานขั้นตอนที่ 1
      3. ทำการทดลองโปแกรม ผลการจากการเขียนโปรแกรม ดังตัวอย่างข้างล่าง   ที่มา : http://krunisit.rwb.ac.th/myfiles.html

การติดตั้งแบตเตอรี่แบบชาร์จได้

การติดตั้งแบตเตอรี่แบบชาร์จได้

การติดตั้งแบตเตอรี่ ให้ใช้นิ้วโป้งกดตรงแถบพลาสติกด้านข้างเพื่อเอาฝาออก แล้วใส่แบตเตอรี่ให้เข้าที่

การชาร์จแบตเตอรี่

    การชาร์จแบตเตอรี่ ให้เสียบสายชาร์จด้านหนึ่งในที่เสียบสายชาร์จที่อยู่ใต้พอร์ต 1-4 ส่วนอีกด้านให้เสียบกับปลั๊กไฟ
  • ไฟสีเขียวจะสว่างขึ้นเมื่อต่อแบตเตอรี่กับที่ชาร์จ
  • ไฟสีแดงจะสว่างระหว่างชาร์จ และจะดับลงเมื่อชาร์จเสร็จแล้ว
  • การชาร์จแบตเตอรี่ใช้เวลาประมาณ 4 ชั่วโมง
  • สามารถใช้งาน NXT ระหว่างชาร์จได้ แต่จะทำให้ใช้เวลาในการชาร์จนานขึ้น
  • แบตเตอรี่นี้สามารถชาร์จได้ 500 ครั้ง                         

    การใช้ถ่านไฟฉายขนาด AA

    ให้ใส่ถ่านไฟฉายขนาด AA จำนวน 6 ก้อน ลงไปในช่องใส่ถ่านแล้วปิดด้วยฝาปิด    

    กรณีแบตเตอรี่อ่อน

    เมื่อแบตเตอรี่อ่อน จะมีข้อความแสดงบนจอ NXT ว่า Low Battery
    เราสามารถประหยัดพลังงาน NXT ได้โดยการตั้งเวลาปิดเครื่อง โดยไปที่เมนู Settings / Sleep แล้วเลือกเวลาที่ต้องการให้ NXT ปิดเครื่อง

    ข้อควรระวังเกี่ยวกับแบตเตอรี่

    • อย่าใช้แบตเตอรี่คนละชนิดบน NXT
    • หากจะไม่ได้ใช้ NXT เป็นเวลานาน ให้นำแบตเตอรี่ออกจาก NXT ก่อน
    • หากแบตเตอรี่หมด ให้เอาออกจาก NXT โดยทันที
    • การชาร์จแบตเตอรี่ควรทำตามคำแนะนำเกี่ยวกับการชาร์จแบตเตอรี่
    • อย่าชาร์จแบตเตอรี่ที่ไม่สามารถชาร์จได้

      หน้าจอแสดงผล NXT

      หน้าจอแสดงผล NXT (ต่อ)

      เมนูต่างๆ ในเมนูหลักของ NXT

      เมื่อเราเปิด NXT เราจะพบกับเมนูหลัก ประกอบไปด้วยเมนูต่างๆ
      • Settings: เมนูนี้ สามารถตั้งค่าต่างๆ เกี่ยวกับหุ่นยนต์ เช่น การปรับความดังของลำโพง Loudspeaker, หรือตั้งเวลาปิด NXT เพื่อประหยัดแบตเตอรี่ และมีเมนูให้ลบโปรแกรมทั้งหมดที่เราเคยดาวน์โหลดใส่หุ่นยนต์ NXT
      • Try Me: เมนูนี้ จะมีโปรแกรมพื้นฐานต่างๆ ที่มีอยู่ในหุ่น NXT ไว้สำหรับให้เราทดลองเบื้องต้น
      • My Files: เมนูนี้ จะเป็นที่เก็บโปรแกรมทั้งหมดที่เรา้เขียนด้วยโปรแกรมควบคุมเช่น NXT-G
      • NXT Program: เมนูนี้ สามารถเขียนโปรแกรมง่ายๆ บน NXT โดยไม่จำเป็นต้องใช้คอมพิวเตอร์
      • View: เมนูนี้ สามารถตรวจสอบค่าและทดสอบเซ็นเซอร์ต่างๆ บน NXT
      • Bluetooth: เมนูนี้ สามารถตั้งค่าของ Bluetooth และเชื่อมต่อกับอุปกรณ์อื่นๆ เช่นโทรศัพท์มือถือ คอมพิวเตอร์ หรือหุ่นยนต์ NXT ตัวอื่นๆ

        ที่มา : http://krunisit.rwb.ac.th/battery.html#page1

      

โปรแกรม (Software) สำหรับเขียนคำสั่ง Lego Mindstorms Education NXT

โปรแกรม (Software) สำหรับเขียนคำสั่ง

Lego Mindstorms Education NXT

โปรแกรม Lego Mindstorms Education NXT หรือ NXT-G Education เป็นโปรแกรมที่ใช้งานง่ายและ สะดวกสำหรับตั้งแต่นักเรียนจนถึงระดับผู้เชี่ยวชาญ โปรแกรม Lego Mindstorms Education NXT เป็นโปรแกรมที่ใช้ไอคอนเป็นหลัก โดยที่นักเรียนสามารถลากและวางไอคอนต่างๆ เพื่อสร้างโปรแกรมบังคับหุ่นยนต์ทำงานตามเงื่อนไขต่างๆ ได้
โปรแกรม Lego Mindstorms Education NXT
โปรแกรม Lego Mindstorms Education NXT ยังมีส่วนที่เรียกว่า Robot Educator ซึ่งประกอบไปด้วยตัวอย่างแบบของหุ่นยนต์และตัวอย่างโปรแกรมต่าง ๆ ที่จะช่วยให้ครูและนักเรียน ได้เริ่มต้นการเขียนโปรแกรมให้กับหุ่นยนต์ได้

โปรแกรมอื่นๆ

นอกจากนี้การเขียนโปรแกรมบนหุ่นยนต์ NXT สามารถใช้โปรแกรมอื่นๆ ได้อีกด้วย เช่น
  • RoboLab 2.9 - เขียนโปรแกรมโดยลากบล๊อกคำสั่งต่างๆ มาเชื่อมต่อกัน
  • RobotC - เขียนโปรแกรมควบคุมหุ่นยนต์โดยใช้ภาษา C
ในบทเรียนนี้จะใช้ Lego Mindstorms Education NXT ในการเรียนและการทดลอง

หุ่นยนต์ Lego Mindstorms NXT

  • อุปกรณ์หุ่นยนต์ NXT
  • การติดตั้งแบตเตอรี่
  • หน้าจอแสดงผล NXT
  • เมนูโปรแกรมใน NXT
    • My Files
    • NXT Program
    • Try Me
    • View
    • Settings
    • Bluetooth
  • แนะนำอุปกรณ์ตรวจวัด
    • Touch Sensor
    • Sound Sensor
    • Light Sensor
    • Ultrasonic Sensor
    • Interactive Servo Motor  

      ส่วนประกอบเบื้องต้น


อุปกรณ์หุ่นยนต์ NXT

การต่ออุปกรณ์ตรวจวัด(sensor)ต่างๆ

อุปกรณ์ตรวจวัดต่างๆ สามารถต่อกับพอร์ตหมายเลข 1 - 4 ช่องไหนก็ได้

อุปกรณ์หุ่นยนต์ NXT

นอกจากนี้ยังมีอุปกรณ์ที่เป็นส่วนประกอบอีกดังที่กล่าวมาแล้วในหัวข้ออุปกรณ์พื้นฐาน Hard ware
ที่มา  : http://krunisit.rwb.ac.th/software.html#last

หุ่นยนต์ LEGO Mindstroms

หุ่นยนต์ LEGO Mindstroms

                Lego ได้ผลิตชิ้นส่วนอุปกรณ์ ตัวต่อ ของเล่นมากมาย ในส่วนของหุ่นยนต์ Lego ได้ผลิตหุ่นยนต์ขนาดเล็กที่ใช้ชื่อ Lego Mindstorms ออกมารุ่นแรก เรียกว่า Lego Mindstorms RCX ซึ่งสามารถเขียนโปรแกรมควบคุมให้ทำงานได้อย่างอัตโนมัติ ต่อ มาทาง Lego ได้ผลิตหุ่นยนต์อีก 1 รุ่น คือ Lego Mindstorms NXT (เพื่อให้เรียกชื่อ กระชับและสั้น ในบทเรียนเราจะเรียกหุ่นยนต์ NXT ) ยังคงไว้ที่สามารถเขียนโปรแกรมควบคุมการทำงานได้

อุปกรณ์พื้นฐาน (Hardware)

                   LEGO MINDSTORMS NXT เป็นชุดสร้างหุ่นยนต์ และเขียนโปรแกรมหุ่นยนต์โดย LEGO Groupชุด NXT ประกอบด้วยโมดูลไมโครคอมพิวเตอร์ ที่เราสามารถเขียนโปรแกรมคอมพิวเตอร์้ควบคุม อุปกรณ์ มอเตอร์ เซ็นเซอร์ต่างๆ และตัวต่ออื่นๆ มาประกอบเพื่อสร้างหุ่นยนต์ได้
NXT Brick, มอเตอร์ และเซ็นเซอร์ชนิดต่างๆ 

                อุปกรณ์ ตรงกลางเรียกว่า NXT Brick ซึ่งทำหน้าที่เป็นสมองหรือส่วนควบคุมของหุ่นยนต์ NXT MINDSTORMSข้างในจะมีไมโครคอนโทรลเลอร์ที่เราสามารถดาวน์โหลดโปรแกรมใส่เข้าไปผ่านทางพอร์ตUSB หรือทาง Bluetooth ซึ่ง NXT Brick จะมีพอร์ต 4 พอร์ตสำหรับใส่เซ็นเซอร์ (พอร์ต 1, 2, 3 และ 4)และพอร์ต 3 พอร์ตสำหรับการส่งออก (A, B และ C) ขับเคลื่อนมอเตอร์และอุปกรณ์ส่งออกอื่นๆ มีจอ LCD สำหรับแสดงข้อมูลและมีปุ่มสำหรับการเลือกเมนูต่าง ๆ บนตัว Brick
NXT Brick ใช้แบตเตอรี่ AA หกก้อน และในชุดมาตราฐาน Education Base Set(รหัส 9797) จะมาพร้อมกับชุดแบตเตอรี่ที่สามารถชาร์จได้

ส่วนประกอบต่างๆ ในชุด NXT Base Set

ที่มา : http://www.legoeducation.us