วันเสาร์ที่ 5 กันยายน พ.ศ. 2558

ใข้ Scilab plot ข้อมูล real time จาก Arduino

โปรแกรม ฝั่่ง Arduino
void setup() {

Serial.begin(9600); // กำหนดค่าความเร็วให้ Serial
}
\\konkarhoon.blogspot.com
void loop() {
for (int i=0;i<900;i++)  // สรัาง for loop โดยกำหนดให้ i=0 ถ้า i เพิ่มขึ้นทีละ 1 จนถึง 900
{
Serial.print(i);    // สั่งให้ส่งข้อมูล มาทาง serial
delay(50);       // ใส่ค่า delay 50ms เพื่อให้ arduino ส่งข้อมูลมา ทีละ 50 มิลลิวินาที
//konkarhoon.blogspot.com
}
}

//konkarhoon.blogspot.com
โดยต้องใช้ scilab Version 5.4 (Version 5.5 ยังไม่ support)
ต่อไป เราจะ plot ค่าที่ arduino ส่งมาบน scilab
เปิด scilab ขึ้นมา

ในการจะใช้ function serial port ใน scilab ต้องไปเปิดฟังก์ชั่นเพิ่มเติมก่อน
โดยการไปที่ menu Module manager - atoms




















//konkarhoon.blogspot.com

 Serial Comunication Tool box




หลังจาก install แล้วเขียน code ใน scilab ดังนี้
คลิ๊ก SciNotes ที่แถบเครื่องมือมุมบนซ้ายขึ้นมาเพื่อเขียนโปรแกรมรวดเดียว
//konkarhoon.blogspot.com
h=openserial(4,"9600,n,8,1");      //กำหนดให้ h คือ serial port com4 ความเร็ว 9600 ซึ่งก็คือ port ที่ต่อ arduino(ถ้ายังไม่                                                           ต่อ arduino จะขึ้น error)
for i=1:1000;                                //กำหนดให้ i มีค่ามากกว่าของ arduino ซึ่งจะ plot กราฟจาก 1 ถึง 1000
answer=readserial(h)                   //กำหนดให้ answer รับค่า มาจาก serial port
answery=strtod(answer);             //แปลงข้อมูล string ไปเป็นชนิด Double เพื่อ plot กราฟ
plot2d3('gnn',i,answery);             //กำหนดชนิดการ plot กราไฟให้ scilab
drawnow();                                  //สั่ง plot กราฟ
end
closeserial(h)
//konkarhoon.blogspot.com
เขียนเสร็จแล้ว กด Execute รูปลูกศร เพื่อ Run คำสั่ง
เมื่อ plot แกน x ถึงค่า 1000 ก็จะหยุด plot 
//konkarhoon.blogspot.com


















-ใช้ Xcos ของ scilab plot กราฟแรงดัน analog จาก Arduino




การทดสอบสื่อสาร arduino กับ computer ผ่าน serial protocal

เปิดโปรแกรม Arduino
//konkarhoon.blogspot.com
void setup() {
  // กำหนดค่าความเร็วให้ Serial
Serial.begin(9600);
}
//konkarhoon.blogspot.com
void loop() {
   // สรัาง for loop โดยกำหนดให้ i=0 ถ้า i เพิ่มขึ้นทีละ 1 จนถึง 100
for (int i=0;i<100;i++)
{
  // สั่งให้ส่งข้อมูล มาทาง serial
Serial.print(i);
}
}

//konkarhoon.blogspot.com

ต่อ Arduino กด upload แล้วกด serial monitor รูปแว่นขยาย
จะเห็นการส่งข้อมูลเข้ามาที่ Computer
//konkarhoon.blogspot.com



click เพื่ออ่านบทความ

ใข้ Scilab plot ข้อมูล real time จาก Arduino

วันพุธที่ 2 กันยายน พ.ศ. 2558

ASCII Character Set ตารางแอสกี้โค๊ด

Hex
0
1
2
3
4
5
6
7
0
NUL
DLE
space
0
@
P
`
p
1
SOH
DC1
!
1
A
Q
a
q
2
STX
DC2
"
2
B
R
b
r
3
ETX
DC3
#
3
C
S
c
s
4
EOT
DC4
$
4
D
T
d
t
5
ENQ
NAK
%
5
E
U
e
u
6
ACK
SYN
&
6
F
V
f
v
7
Bell
ETB
'
7
G
W
g
w
8
BS
CAN
(
8
H
X
h
x
9
HT
EM
)
9
I
Y
i
y
A
LF
SUB
*
:
J
Z
j
z
B
VT
ESC
+
;
K
[
k
{
C
FF
FS
,
< 
L
\
l
|
D
CR
GS
_
=
M
]
m
}
E
SO
RS
.
> 
N
^
n
~
F
SI
US
/
?
O
_
o
DEL

วันอังคารที่ 1 กันยายน พ.ศ. 2558

จำลองการต่อวงจรและ sim ผ่าน website

โดย webiste
https://123d.circuits.io/
//konkarhoon.blogspot.com
เป็น web ที่ให้จำลองการต่อวงจรของอุปกรณ์ อิเล็กทรอนิกส์ต่างๆรวมไปถึงการจำลอง arduino
ซึ่งทำให้ประหยัดค่าอุปกรณ์ในช่วงออกแบบ ซึ่งไม่ต้องลงโปรแกรมใดๆเลย















เมื่อเข้าเวปมาแล้วก่อนใช้งานต้องทำการลงทะเบียนก่อน
















กด sign up แล้วก็จะมีให้กำหนด User name & password และ อีเมล์
กด creat account

กดเลือก electronic open lab hub













//konkarhoon.blogspot.com
ก็จะมีทั้ง ฺVideo สอน และเลือกเริ่มต้นทำ

ก็จะได้ Breadboard จากนั้นให้เราเลือกอุปกรณ์ที่จะมาวางบริเวณมุมขวาบน เลือกที่ components
จากนั้นเมื่อเขียนต่ออุปกรณ์และโปรแกรมเสร็จก็สามรถกด Sim ได้ที่มุมขวาบนเพื่อจำลองการทำงาน
โปรแกรมก็จะจำลองการทำงานให้เราเห็นได้ในทันที