Project พัดลมปรับความเร็วตามอุณหภูมิ + ควบคุมผ่าน Android Phone
แนะนำความสามารถของพัดลมตัวนี้กันก่อนนะครับ สามารถทำงานได้ 3 โหมด คือ 1. Manual 2. Auto และ 3. Manual โดย Android Phone
มาสคอตสินค้าของ Hada Labo
เป็นผลิตภัณฑ์ดูแลผิวจากประเทศญี่ปุ่น ซึ่งทางทีมงานได้เข้าไปทำระบบไฟฟ้าและควบคุมเจ้าตัวมาสคอตดังรูปด้านล่าง โดยทำเป็นเกม ให้ผู้เล่นแข่งกันตบแก้ม ใครตบเก่งก็เป็นผู้ชนะไปนะครับ
วันเสาร์ที่ 20 กรกฎาคม พ.ศ. 2556
19:16
Pornprasert
ปัจจุบัน PLC ถูกนำมาใช้ในโรงงานอุตสาหกรรมมากขึ้น ซึ่งตัว PLC นั่นใช้ควบคุมการทำงานของเครื่องจักร เปรียบเสมือนเป็นหัวใจของระบบเลยก็ว่าได้ ซึงถ้าเกิดความเสียหายกับ PLC นั่นหมายถึงเครื่องจักรหยุดทำงาน ส่งผลกระทบกับกำลังการผลิตไม่เป็นไปตามแผนที่วางแผนไว้ ทำให้การจัดส่งล่าช้าและส่งผลเสียหายแก่บริษัทเป็นอย่างมาก
เพราะฉนั้น เราต้องทราบถึงพื้นฐานในการดูแลและตรวจสอบ PLC โดยพื้นฐานการตรวจสอบแบ่งออกได้ ดังนี้
เพราะฉนั้น เราต้องทราบถึงพื้นฐานในการดูแลและตรวจสอบ PLC โดยพื้นฐานการตรวจสอบแบ่งออกได้ ดังนี้
- ให้สังเกตหลอดไฟแสดงสถานะ power supply
- หลอดไฟติด แสดงว่าปกติ
- หลอดไฟกะพริบ แสดงว่าผิดปกติ
- การจ่ายแรงดันไฟฟ้าให้กับ Power Supply ต่ำกว่าค่ามาตรฐานที่กำหนด แก้ไขโดยปรับแรงดันให้ได้ตามมาตรฐานที่กำหนด
- วงจร Power Supply ภายใน PLC มีปัญหา แก้ไขโดยไม่ควรแก้ไขเองส่งให้ Supplier ซ่อม
- หลอดไฟดับ แสดงว่าไม่มีการจ่ายแรงดันไฟฟ้าให้กับ Module หรือเกิดจากวงจร Power Supple ภายใน PLC มีปัญหา
- ตรวจสอบโหมดการทำงาน
- สถานะของไฟ Run ติด แสดงว่าปกติ
- สถานะของไฟ Run ติดกะพริบ แสดงว่าผิดปกติ
- Program หรือ Parameter Error แก้ไขโดย write to PLC ใหม่
- สถานะของไฟ Run ดับ แสดงว่าผิดปกติ
- ตรวจไฟสถานะของ LED ดังรูปด้านล่าง (แนะนำให้ทำทุกวัน)
ข้อมูลที่่ได้จาก Manual ของ PLC แต่ละรุ่น |
4. Preventive Maintenance ทุก 6 เดือน หรือ 1 ปี ตรวจสอบระบบ PLC พวก Semiconductor ส่วนเชื่อมต่อทางไฟฟ้า ดังรูปด้านล่าง
5. Periodic maintenance ทำ 1 หรือ 2 ครั้ง ทุก 6 เดือน ตามรูปด้านล่าง
6.ตรวจสอบแรงดันไฟสำรองแบตเตอรี่(Battery) เป็นอุปกรณ์ที่ใช้สำหรับจ่ายแรงดันไฟสำรองเพื่อรักษาข้อมูลไม่ให้สูญหายเมื่อเกิดไฟดับ โดยใช้ร่วมกับหน่วยความจำประเภท RAM โดยอายุการใช้งานของแบตเตอรี่จะขึ้นอยู่กับความจุของหน่วยความจำและระยะเวลาที่ไฟดับ (โดยปกติควรเปลี่ยนทุกๆ 5 ปี) ซึ่งจะมีสัญญาณไฟติดที่หลอด Batt.B หรือ BAT. ต้องรีบเปลี่ยนทันทีนะครับ
วิธีการเปลี่ยนแบตเตอรี่ทำโดย
- ถอดฝาครอบ PLC ออก จะพบแบตเตอรี่ที่มีสายไฟเสียบอยู่ให้ถอดปลั๊กสายไฟแบตเตอรี่ออก
- ถอดแบตเตอรี่ออกจากชุดจับยึดแบตเตอรี่
- ติดตั้งแบตเตอรี่ใหม่กับชุดจับยึดแบตเตอรี่และต่อปลั๊กสายไฟแบตเตอรี่
- การเปลี่ยนแบตเตอรี่ทุกครั้งควรใช้แบตเตอรี่ใหม่ที่ไม่เคยถูกใช้งาน และการเปลี่ยนต้องเปลี่ยนให้เสร็จภายใน 30 วินาทีหลังจากถอดปลั๊กสายไฟแบเตอรี่ออก
วันศุกร์ที่ 5 เมษายน พ.ศ. 2556
วันอาทิตย์ที่ 3 มีนาคม พ.ศ. 2556
13:18
Pornprasert
GX Deverloper V8 เป็นเครื่องมือที่ใช้เขียนโปรแกรม plc ของ Mitsubishi ซึ่งวันนี้จะมาบอกวิธีการติดตั้งโปรแกรมนะครับ
1.ทำการโหลดโปรแกรม GX Derverloper V8 มาก่อน จะได้ดังรูป
- ทำการติดตั้ง EnvMEL ก่อน
- แล้วติดตั้ง GX Deverloper V.8
ติดตั้ง Environment of MELSOFT
ติดตั้ง GX Deverloper V.8
เมื่อติดตั้งสำเร็จถ้าต้องการ Simulation ในโปแกรม GX Deverloper ก็ลง GX Simulation ซึ่งหลักการติดตั้งเหมือน GX Deverloper เลยครับ
00:19
Pornprasert
ModScan เป็นเครื่องมือที่ช่วยใช้ในการ mapping address ของ SCADA MODBUS TCP RUT ซึ่งสามารถ อ่าน เขียน ข้อมูลได้ หรือในบ้างครั้งเราก็ใช้ในการอ่านค่าจาก Instrument หรือ PLC ขึ้นมาดูค่า Parameter ซึ่งระบบของเราต้องมีการใช้งาน MODBUS PROTOCOL
เริ่มจาก download ModScan แต่เป็นตัว demo นะครับ
พอโหลดเสร็จก็แตกไฟล์จะได้ดังรูป
สร้าง connection ไปที่ Connection>>Connect จะแสดงหน้าต่างดังรูปมาให้เรา config ซึ่งในที่นี้เราจะใช้
ethernet นั่นคือ modbus tcp ใส่ ip address และ Port ของอุปกรณ์ที่รองรับ Modbus Protocol
เริ่มจาก download ModScan แต่เป็นตัว demo นะครับ
พอโหลดเสร็จก็แตกไฟล์จะได้ดังรูป
เมื่อเราดับเบิ้ลคลิกไปที่ ModScan32.exe หน้าตาโปรแกรมจะเป็นดังรูป
ethernet นั่นคือ modbus tcp ใส่ ip address และ Port ของอุปกรณ์ที่รองรับ Modbus Protocol
เมื่อเราสร้าง connection สำเร็จ เราสามารถ อ่าน เขียน Modbus point tpye ได้ 4 แบบ ดังรูป
สามารถเขียนค่าของข้อมูลได้ดังรูป
สามารถเลือกโหมดการอ่านเขียน address ได้ตามรูป
ทั้งหมดนี้สามารถอ่านข้อมูลได้เพิ่มเติมตามลิ้งข้างล่างเลยครับ
วันอังคารที่ 3 เมษายน พ.ศ. 2555
วันพุธที่ 28 มีนาคม พ.ศ. 2555
21:01
Pornprasert
วันนี้ว่าง ๆ หลังทานอาหารอิ่มๆ ผมไปอ่านข่าวเจอแอฟที่เป็นเกมยอดนิยมใน iPhone / iPad มาช่วงระยะเวลาหนึ่ง นั่นคือ เกม Temple Run ซึ่งตอนนี้ใน Android โดยสามารถโหลดใน Google Play แล้วคร้าบบบ !! เกมก็ไม่มีอะไรมาก ผู้เล่นรับบทเป็นนักล่าสมบัติที่ต้องวิ่งหนีสัตว์ประหลาด มีการหลบสิ่งกีดขวาง กระโดด มุด และเก็บเหรียญตามจุดต่างๆ สนุกมากๆคร้าบลองโหลดเล่นกันนะคร้าบบ !!
ดาวน์โหลด ที่นี้
รูปตัวอย่างเกม Temple Run . . .
ดาวน์โหลด ที่นี้
รูปตัวอย่างเกม Temple Run . . .
วันอังคารที่ 30 สิงหาคม พ.ศ. 2554
วันเสาร์ที่ 20 สิงหาคม พ.ศ. 2554
วันศุกร์ที่ 29 กรกฎาคม พ.ศ. 2554
04:54
Pornprasert
การสร้างลิงค์ติดต่อสื่อสารแบบ TCP/IP ที่เป็น sockets เป็นการเชื่อมต่อแบบ connection-orientated ซึ่งนั้นก็หมายความว่าการสนทนาระหว่างเครื่อง client กับ server จะทำการเชื่อมต่อตลอดเวลาที่สนทนานอกเสียจากมันจะเสีย ซึ่งการสนทนากันหรือการแลกเปลี่ยนข้อมูลระหว่าง client กับ server นั้นจะต้องเป็นไปตามกฎของ protocol
สำหรับตัวอย่างการติดต่อ TCP/IP ที่เป็น sockets ผมจะให้
- โทรศัพท์มือถือ android ให้เป็น client
- notebook เป็น server
รูปแสดงไดอะแกรมแสดงการติดต่อสื่อสารกันระหว่าง client และ server ด้วย TCP Socket |
รูปแสดงลำดับขั้นตอนในการติดต่อสื่อสารข้อมูล TCP Socket |
Client SimpleConnect.rar
Java Code
package com.tomkrub.app.simpleconnect;
import java.io.IOException;
import java.io.PrintWriter;
import java.net.Socket;
import java.net.UnknownHostException;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import android.view.View;
import android.view.View.OnClickListener;
public class SimpleConnectActivity extends Activity {
/** Called when the activity is first created. */
private Button btnConnect;
private EditText editIP;
private EditText editPort;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
import java.io.IOException;
import java.io.PrintWriter;
import java.net.Socket;
import java.net.UnknownHostException;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import android.view.View;
import android.view.View.OnClickListener;
public class SimpleConnectActivity extends Activity {
/** Called when the activity is first created. */
private Button btnConnect;
private EditText editIP;
private EditText editPort;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
editIP = (EditText)findViewById(R.id.editIP);
editPort = (EditText)findViewById(R.id.editPort);
btnConnect = (Button)findViewById(R.id.btnConnect);
btnConnect.setOnClickListener(new OnClickListener()
{ public void onClick(View v){
connect(editIP.getText().toString(),Integer.parseInt(editPort.getText().toString()));
}
});
// connectIP();
}
public void connect (String IP,int Port)
{
Socket clientSocket = null;
try {
//clientSocket = new Socket("localhost", 5000);//127.0.0.1
clientSocket = new Socket(IP,Port);
Toast.makeText(this, clientSocket.getInetAddress().toString(),
Toast.LENGTH_LONG).show();
//clientSocket.close();
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
Toast.makeText(this, "UnknownHostException "+e,
Toast.LENGTH_LONG).show();
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
Toast.makeText(this, "IOException "+e,
Toast.LENGTH_LONG).show();
e.printStackTrace();
}
PrintWriter outToServer = null;
try {
outToServer = new PrintWriter(clientSocket.getOutputStream(),true);
outToServer.println ("test sentence na krub") ; //ประโยคที่ทำการส่งให้ server
Toast.makeText(this, "test",Toast.LENGTH_LONG).show();
clientSocket.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
editPort = (EditText)findViewById(R.id.editPort);
btnConnect = (Button)findViewById(R.id.btnConnect);
btnConnect.setOnClickListener(new OnClickListener()
{ public void onClick(View v){
connect(editIP.getText().toString(),Integer.parseInt(editPort.getText().toString()));
}
});
// connectIP();
}
public void connect (String IP,int Port)
{
Socket clientSocket = null;
try {
//clientSocket = new Socket("localhost", 5000);//127.0.0.1
clientSocket = new Socket(IP,Port);
Toast.makeText(this, clientSocket.getInetAddress().toString(),
Toast.LENGTH_LONG).show();
//clientSocket.close();
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
Toast.makeText(this, "UnknownHostException "+e,
Toast.LENGTH_LONG).show();
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
Toast.makeText(this, "IOException "+e,
Toast.LENGTH_LONG).show();
e.printStackTrace();
}
PrintWriter outToServer = null;
try {
outToServer = new PrintWriter(clientSocket.getOutputStream(),true);
outToServer.println ("test sentence na krub") ; //ประโยคที่ทำการส่งให้ server
Toast.makeText(this, "test",Toast.LENGTH_LONG).show();
clientSocket.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
Server TCP chat program Download TCPChat.jar หรือ Gui.java
ผลการทดลอง
ขณะรอการเชื่อมต่อจาก client |
ป้อน IP กับ Port ของ Server พร้อมกด Connect |
Server เชื่อมต่อกับ client พร้อมได้รับข้อมูล |
วันอาทิตย์ที่ 24 กรกฎาคม พ.ศ. 2554
00:30
Pornprasert
ขาย LED สีชมพู Round 5MM คุณภาพดี ลดกระหน่ำ
20 - 100 ดวง ดวงละ 3 บาท (ส่งเป็นซองจดหมายไม่เสียค่าาส่
รูป LED ขณะจ่ายไฟ 3V เข้าไป แสงสีชมพูสวยมาก |
รูปถ่ายด้านบนของ LED |
20 - 100 ดวง ดวงละ 3 บาท (ส่งเป็นซองจดหมายไม่เสียค่าาส่ งเพิ่ม)
200 - 500 ดวง ดวงละ 2.5 บาท (ส่งเป็นพัสดุ ค่าส่ง 50 บาท ทั่วประเทศ)
มากกว่า 500 ดวง ดวงละ 2 บาท (ส่งเป็นพัสดุ ค่าส่ง 50 บาท ทั่วประเทศ)
ราคาปกติ ดวงละ 5-6 บาท
วันศุกร์ที่ 22 กรกฎาคม พ.ศ. 2554
23:35
Pornprasert
ก็วันนี้ผมเอาคลิปวีดีโอเจ้าหุ่นยนต์ iRobot Create ซึ่งถูกควบคุมด้วย Android (a Nexus One)
มีการทำงานด้วยกัน 4 โหมดภายใน App ที่ชื่อว่า Cellbots.apk Download
1. ใช้ directional pad (D-Pad) ในการควบคุมหุ่นยนต์
2. ใช้ joystick ในการควบคุมหุ่นยนต์
3. ใช้ accelerometer ในการควบคุมหุ่นยนต์
4. ใช้ voice ในการควบคุมหุ่นยนต์
และยังออกแบบมาให้สามารถเชื่อมต่อผ่าน USB ,Bluetooth,Wifi ได้
ซึ่ง App Cellbots สนับสนุน Android 2.2 (Froyo) ขี้นไป นะครับ
ขอบคุณข้อมูลจาก http://www.cellbots.com/
มีการทำงานด้วยกัน 4 โหมดภายใน App ที่ชื่อว่า Cellbots.apk Download
1. ใช้ directional pad (D-Pad) ในการควบคุมหุ่นยนต์
2. ใช้ joystick ในการควบคุมหุ่นยนต์
3. ใช้ accelerometer ในการควบคุมหุ่นยนต์
4. ใช้ voice ในการควบคุมหุ่นยนต์
และยังออกแบบมาให้สามารถเชื่อมต่อผ่าน USB ,Bluetooth,Wifi ได้
ซึ่ง App Cellbots สนับสนุน Android 2.2 (Froyo) ขี้นไป นะครับ
ขอบคุณข้อมูลจาก http://www.cellbots.com/
สมัครสมาชิก:
บทความ
(
Atom
)