24 ธันวาคม 2552

กลองอิเล็กทรอนิกส์

กลองอิเล็กทรอนิกส์

ใช้ sensor แบบ Peizo หรือเรียกว่า บัสเซอร์ เพื่อตรวจสอบการสั่นของกลอง
ดูวีดีที่นี่อธิบายง่ายกว่าครับ http://todbot.com/blog/2006/10/29/spooky-arduino-projects-4-and-musical-arduino/
หลังจากนั้น เราจะส่ง code MIDI ออกไป
วิธีการต่อ MIDI port กับ Arduino http://arduino.cc/en/Tutorial/Midi


เราจะต่อผ่าน serial แต่จะใช้ Board rate ที่ 31250
วิธีการทำสำคัญคือการทำ debounce เพื่อให้เราไม่ส่งสัญญาณออกไปหลายครั้ง
จะได้เสียง MIDI ที่ไม่สมบูรณ์
วิธีการ Debounce http://www.arduino.cc/en/Tutorial/Switch

แต่ใน Sample เป็นเสียงเปียโน เราต้องเปลี่ยน Channel เป็น Channel 9 คือ 0x99
ที่มาจาก http://www.harmony-central.com/MIDI/Doc/tutorial.html#messages
The General MIDI system utilizes MIDI Channels 1-9 and 11-16 for
chromatic instrument sounds, while Channel number 10 is utilized for
"key-based" percussion sounds. These instrument sounds are grouped into
"sets" of related sounds. For example, program numbers 1-8 are piano
sounds, 9-16 are chromatic percussion sounds, 17-24 are organ sounds,
25-32 are guitar sounds, etc.

อื่นๆที่เกี่ยวข้อง

สำหรับผู้สนใจศึุกษาเพิ่มเติม
library MIDI ของ Arduino http://timothytwillman.com/itp_blog/?page_id=240

ยูเอสบี MIDI สำหรับ Arduino
http://delacrew.net/www2/dev/arduino-usb-midi-interface/





17 ธันวาคม 2552

วิธีการลง OpenCV2.0 ใน Visual C++ 2008

อันนี้เขียนดีที่สุด
http://tspp.wordpress.com/2009/10/17/opencv-2-0-มาใหม่-ไฉไลกว่าเดิม-พร/

อ่านสั้นง่ายกระชับ สำหรับโปร วิธีเหมือนอันข้างบน
http://blog.qevan.com/posts/512.g

สร้าง test project ว่าลงสำเร็จหรือเปล่า
วิธีลงในนี้ใช้ไม่ได้เพราะเป็นของเวอร์ชั่นเก่า
http://opencv.willowgarage.com/wiki/VisualC%2B%2B

15 ธันวาคม 2552

MIDI Note Player

Arduino Play MIDI


Tutorial on MIDI and Music Synthesis

http://www.harmony-central.com/MIDI/Doc/tutorial.html#messages

The General MIDI system utilizes MIDI Channels 1-9 and 11-16 for chromatic instrument sounds, while Channel number 10 is utilized for "key-based" percussion sounds. These instrument sounds are grouped into "sets" of related sounds. For example, program numbers 1-8 are piano sounds, 9-16 are chromatic percussion sounds, 17-24 are organ sounds, 25-32 are guitar sounds, etc.

11 ธันวาคม 2552

Service ของ Microsoft Robotics Studio สำหรับ Arduino

Service ของ Microsoft Robotics Studio สำหรับ Arduino

Project Logo

มันจะใช้กับ board

Arduino Duemilanove

Summary

Microcontroller ATmega168
Operating Voltage 5V
Input Voltage (recommended) 7-12V
Input Voltage (limits) 6-20V
Digital I/O Pins 14 (of which 6 provide PWM output)
Analog Input Pins 6
DC Current per I/O Pin 40 mA
DC Current for 3.3V Pin 50 mA
Flash Memory 16 KB (ATmega168) or 32 KB (ATmega328) of which 2 KB used by bootloader
SRAM 1 KB (ATmega168) or 2 KB (ATmega328)
EEPROM 512 bytes (ATmega168) or 1 KB (ATmega328)
Clock Speed 16 MHz

การทำหาความลึกจากภาพ 2 ภาพ

การทำหาความลึกจากภาพ 2 ภาพ
ขั้นตอนในการหาความลึกจากภาพ 2 ภาพหรือ Stereo Imaging
1. เอาการเบี่ยงเบนที่เกิดจาก Lens ออก Undistortion
2. ปรับมุมและระยะห่างระหว่างกล้อง rectification จะได้รูป row-aligned และ rectified
3. หาจุดที่เหมือนกันของภาพซ้ายและขวา correspondence จะได้ disparity map ที่มีค่าแตกต่างกันในแนวแกน x 
4.ใช้รูปสามเหลี่ยมในการหาระยะห่าง เรียกว่า reprojection จะได้ depth map แล้ว

เว็บรวมโปรแกรม Computer Vision

http://www.cs.cmu.edu/~cil/v-source.html

08 ธันวาคม 2552

ปริญญาโท - เอกด้านหุ่นยนต์และระบบอัตโนมัติ

หลักสูตร FRA จะจัดงานแนะนำหลักสูตรระดับปริญญาโท – เอกด้านหุ่นยนต์และระบบอัตโนมัติ ในวันศุกร์ที่ 15 มกราคม 2553 ณ ห้องเรียน 2 ชั้น 14 อาคารสถาบันนวัตกรรมการเรียนรู้ เฉลิมพระเกียรติ 80 พรรษา มูลนิธิไทยคม ม.พระจอมเกล้าธนบุรี

01 ธันวาคม 2552

แก้ปัญหา C++ ไม่ยอมโชว์รูป ใน Picture...

แก้ปัญหา C++ ไม่ยอมโชว์รูป ใน Picture Control ใน Modalless Dialog
ปัญหาเกิดจาก Dialog ที่สร้างขึ้นไม่มีการสร้าง virtual BOOL OnInitDialog();
แก้โดย
  1. เพิ่ม virtual BOOL OnInitDialog(); ในไฟล์ .h ในส่วนของ Protected:
  2. เพิ่ม Method OnInitDialog() ในไฟล์ .cpp
    BOOL <ชื่อคลาส>::OnInitDialog()
    {
    CDialog::OnInitDialog();
    return false;
    }