Thursday, October 14, 2010

Hot-Cool Stage by Peltier

Peltier Project เสร็จไปอีกหนึ่งผลงานกับแท่น ร้อน-เย็น ( Hot-Cool Stage) ไม่รู้ว่าจะตั้งชื่อว่าอะไร เอาเป็นว่าเจ้าแท่นนี้ มีหน้าที่ทำร้อน หรือทำเย็นก็ได้ ตามที่เราต้องการ (แต่ผมจำกัดอุณหภูมิไว้ที่ 0 – 75 องศาเซลเซียส) 

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

ซึ่งอุปกรณ์ที่ใช้ทำร้อน หรือเย็นที่ต้องการนั้น เราใช้ ThermalElectric  หรือที่เราเรียกว่า Peltier นั่นแหละเป็นพระเอกในการทำร้อน-เย็น การใช้งานของมันง่ายมากๆ เพียงแค่คุณจ่ายไฟกระแสตรงให้มัน จะทำให้ด้านหนึ่งของ Peltier ร้อน และด้านตรงข้ามจะเย็น ในทำนองเดียวกัน หากคุณกลับขั้วไฟจากที่ต่อในครั้งแรก คุณจะพบว่าด้านที่เคยเย็นจะร้อน และด้านที่เคยร้อนจะเย็น เห็นไหมหล่ะ ใช้งานง่ายจะตาย

แต่ที่ยากของมันก็คือ การระบายความร้อนของมันต่างหาก เพราะถ้าในขณะที่เราต้องการความเย็นจากด้านที่เย็น จนถึงขนาดเป็นน้ำแข็งเกาะแล้วหล่ะก็ คุณจะต้องระบายความร้อนด้านที่ร้อนของมันให้ได้เร็วที่สุด ไม่งั้น Peltier พังแน่นอน (พังมาหลายอันแล้ว T_T )

อุปกรณ์หลักๆ ของงานนี้ก็คือ

  • Peltier TEC1-12710 จำนวน 2 แผ่น ตัวผลิตความร้อน ความเย็น
  • Corsair Hydro Series H50 2 เครื่อง ตัวระบายความร้อนชั้นยอด
  • บอร์ดไมโครคอนโทรลเลอร์ PIC16F877 เป็นตัวควบคุม
  • บอร์ด H-Bridge เอาไว้กลับทิศทางกระแสไฟฟ้า
  • Switching Power supply จ่ายกระแสไม่ต่ำกว่า 15 แอมป์

Peltier Project

ผลการทดสอบ สามารถทำความร้อนได้เกือบร้อยองศา แต่ผมว่า อย่าดีกว่า เพราะกาวที่ใช้ยึดของผมมันละลายเลย ก็เลยต้องเขียนโค๊ดดักไว้ ให้ไม่เกิน 75 องศา ส่วนโหมดทำความเย็น สามารถทำให้น้ำแข็งเกาะแท่นอลูมีเนียมได้สบายๆ ดูคลิปวีดีโอสาธิตการทำงานก็แล้วกันครับ

อ่านเพิ่มเติม...

Saturday, September 25, 2010

AVR+VB.NET+WEB จาก Hardware สู่ WEB

VB.NET+RS232+MySQL หายไปนานสำหรับ บทความนี้ พอดีช่วงนี้ยุ่งสุดๆ ทั้งสอบ ทั้งงาน ทั้งโปรเจค โอ้ยเยอะ เอาเป็นว่ายุ่งหล่ะกัน แต่ก็อยากเอามาแชร์ๆ กันมั่ง

พอดีมีโอกาสได้ทดลองเขียนโปรแกรมด้วย VB.NET express รับค่าจาก AVR ซึ่งคอยเช็คว่ามีวัตถุมาบัง sensor หรือยัง แล้ววัตถุออกไปตอนไหน จากนั้นก็จะเก็บค่าไว้ใน memory ของ AVR จากนั้น ก็รอให้ โปรแกรม Counter v1.0 มารับค่าไป เพื่อนำค่าที่ได้ไปบันทึกลงดาต้าเบส MySQL นั่นคืองานในส่วนของ VB.net กับ AVR ซึ่งจะทำงานแบบนี้ไปเรื่อยๆ

ในส่วนของ WEB PAGE จะใช้ PHP + SAJAX เพือทำการดึงข้อมูลจากดาต้าเบส MySQL แล้วทำการส่งออกทางหน้าเว็บบราวเซอร์ ในส่วนนี้ เราจำเป็นต้องพึ่งพา SAJAX เพื่อทำให้หน้าเว็บแสดงผลแทบจะ Realtime ซึ่งตรงนี้ เราสามารถปรับแต่งค่าได้ ว่าจะให้หน้าเว็บ refresh ถี่ขนาดไหน

นี่ก็เป็นคอนเซ็บต์คร่าวๆนะครับ พอดี หน้าเว็บผมยังแต่ไม่เสร็จ อาจจะดูแล้วลูกทุ่งไปหน่อย เพราะอยากทดลองก่อนว่าระบบสามารถทำงานได้ไหม  ส่วนความสวยงานค่อยแต่งทีหลังก็ได้

อ่านเพิ่มเติม...

Wednesday, March 10, 2010

New Engineer, Listen to him




       วันนี้ ก็ยังมึนตื๊บกับ mini project microcontroller ไปเรื่อยเปื่อย ตามประสาคนเก่ง(แบบเป็ด อย่างผม) ในขณะกำลังหาข้อมูลอยู่ พอดีไปเจอเข้ากับเว็บๆหนึ่ง ซึ่งเค้ามีคลิปวีดีโอสัมภาษณ์วิศวกรท่านหนึ่ง ซึ่งค่อนข้างจะอาวุโสสักหน่อย

      โดยส่วนตัวแล้ว ผมไม่ได้รู้จักมักจี่ กับพี่เค้าเท่าไหร่เลย ไม่ได้จบสถาบันเดียวกันด้วย แต่เหตุผลที่นำมาให้ดู นั่นก็เพราะว่าไปสะดุดคำสอนท่อนๆหนึ่ง ที่พี่เค้ากล่าวไว้ เรื่องเกี่ยวกับวิศวกรที่จบมาใหม่หลายๆคน ผมเห็นบางคนทำงานได้ไม่นานก็เปลี่ยนที่ทำงานใหม่ บางคนเข้ามาทำงานแล้วก็มีปัญหากับคนเก่า บางคนเข้ามาแล้ว ก็ค่อนข้างจะถือตัวว่าข้านี่แหละแน่ ข้าจบวิศวะมา แต่อยากจะให้ฟังสักนิด ผมว่าพี่เค้าพูดได้ดี และพูดได้ตรงมาก โดยเฉพาะกับวิศวกรไทย(สไตล์เด็กเกาหลี) จบใหม่ทั้งหลายแหล่ “เจ้าจงมาฟังไว้”

อ่านเพิ่มเติม...

Tuesday, March 9, 2010

PIC18F458 error $MCLR$ is low. Processor is in reset.




image      โดยปกติแล้ว ในการจำลองการทำงานใน proteus บางอย่างเราไม่จำเป็นจะต้องต่อวงจร อย่างเช่น oscillator หรือวงจรรีเซต microcontroller แต่อย่างไร

ซึ่งปกติผมมักจะชอบ simulate กับ PIC16F877 เป็นประจำ แต่วันนี้ผมทดลองใช้เบอร์ 18F458 ซึ่งต้องการอยากให้มันตรงกันกับบอร์ดที่เราใช้งานอยู่จริง

    ทำการทดลองโค๊ด แสดงตัวหนังสืออกหน้าจอ LCD 20x4 ปรากฏว่าไม่มีข้อความปรากฏเลย แล้วแถมเจอ error message ขึ้นมาเพียบเลย มันโชว์ error ว่า “$MCLR$ is low. Processor is in reset.”

ไอ้เจ้า MCLR มันเป็นวงจรสำหรับเอาไว้รีเซต microcontrller ซึ่งปกติ ผมมักจะไม่ต้องต่อ เมื่อทดลองกับ PIC16F877 แต่พอมาเจอ PIC18F458 ปรากฏว่า มันจำเป็นต้องต่อด้วย ถึงแม้เราจะ simulatre ใน proteus ก็ตาม –_-“

MCLR reset circuit

 LCD 20x4

ทำการต่อวงจร reset เข้าไปที่ขา 1 ของ PIC18F458 ซะ แล้วทดลองโปรแกรมอีกที error หายไปแล้ว หน้าจอ LCD แสดงผลได้ตามปกติ

นิทานเรื่องนี้ สอนให้รู้ อย่าคิดว่า ที่ทำตามๆกันมา มันจะถูกเสมอไป เวลาเปลี่ยน ใจก็เปลี่ยน (เกี่ยวกันไหมเนี่ย)

อ่านเพิ่มเติม...
 

แจกฟรี พื้นที่ฝากไฟล์ 15 GB

ติดตามข่าวสารผ่าน Twitter

Blog อื่นๆของฉัน

ผู้ติดตาม Blog นี้

เว็บเพื่อนบ้าน