2017년 7월 28일 금요일
Access와 Cimon을 이용한 DB연동하기-2
//////////////////////////////////////
Sub 리스트업2()
CSqlOpen("SelectQ2")
cnt# = CSqlGetRecordNo("SelectQ2")
wcGridCommand "grid03", 7, 0, 0
for i=1 to cnt
CSqlGetRecord "SelectQ2", i
data1$ = GetTagVal("날짜")
wcGridSetData "grid03",1,i, data1$
data2$ = GetTagVal("온도")
wcGridSetData "grid03",2,i, data2$
data3$ = GetTagVal("압력")
wcGridSetData "grid03",3,i, data3$
data4$ = GetTagVal("유량")
wcGridSetData "grid03",4,i, data4$
wcGridSetData "grid03",0,i, i '번호입력
blank$ = " "
wcGridSetData "grid03",0,i+1, blank$ '번호삭제
wcGridSetData "grid03",0,i+2, blank$
wcGridSetData "grid03",0,i+3, blank$
wcGridSetData "grid03",0,i+4, blank$
next i
CSqlClose("SelectQ2")
End Sub
2017년 7월 26일 수요일
Access와 Cimon을 이용한 DB연동하기
/////////////////////////////////////////
Sub 검색()
CSqlOpen("SelectQ")
CSqlClose("SelectQ")
End Sub
/////////////////////////////////////////
Sub 삽입()
CSqlRun "InsertQ"
RunScript("리스트업") 'DB리스트 갱신
End Sub
/////////////////////////////////////////
Sub 갱신()
CSqlRun "UpdateQ"
RunScript("리스트업") 'DB리스트 갱신
End Sub
/////////////////////////////////////////
Sub 삭제()
CSqlRun "DeleteQ"
RunScript("리스트업") 'DB리스트 갱신
End Sub
/////////////////////////////////////////
Sub 리스트업()
CSqlOpen("SelectAll")
cnt# = CSqlGetRecordNo("SelectAll")
wcGridCommand "grid02", 7, 0, 0
for i=1 to cnt
CSqlGetRecord "SelectAll", i
data1$ = GetTagVal("날짜")
wcGridSetData "grid02",1,i, data1$
data2$ = GetTagVal("온도")
wcGridSetData "grid02",2,i, data2$
data3$ = GetTagVal("압력")
wcGridSetData "grid02",3,i, data3$
data4$ = GetTagVal("유량")
wcGridSetData "grid02",4,i, data4$
wcGridSetData "grid02",0,i, i '번호입력
blank$ = " "
wcGridSetData "grid02",0,i+1, blank$ '번호삭제
next i
CSqlClose("SelectAll")
End Sub
2017년 7월 19일 수요일
데이터수집_엑셀저장
///////////////////설정시간 데이터수집
Sub OutputFile()
flagD = GetTagVal("save_start")
if flagD = 1 then
start_time$ = GetTagVal("시작시간")
SetTagVal "start_time", start_time$
else
start_time$ = GetTagVal("start_time")
end_time$ = GetTagVal("끝시간")
intval = DateDiff("s", start_time$, end_time$)
SetTagVal "interval", cstr(intval)
FileName$ = "D:\EXCEL\" & TimeStr(44) & ".xls"
FileOld$ = "D:\EXCEL\Ex.xls"
If FileExists(FileName$) then
else
FileCopy FileOld$, FileName$
end if
Set XelApp = CreateObject("Excel.Application")
Set XelFile = XelApp.Workbooks.Open(FileName$)
Set ws = XelFile.sheets.item("sheet1")
Cell_Cnt = 1
ws.Cells(Cell_Cnt,1) = "시간"
ws.Cells(Cell_Cnt,2) = "ANA1"
ws.Cells(Cell_Cnt,3) = "ANA2"
for i=1 to intval
setDate$ = DateAdd("s",i,start_time$)
hh$ = hour(setDate$)
mm$ = minute(setDate$)
ss$ = second(setDate$)
nowTime$ = hh$ & "시" & mm$ & "분" & ss$ & "초"
ws.Cells(Cell_Cnt+i,1) = nowTime$
ws.Cells(Cell_Cnt+i,2) = DLogVal("ANA1", nowTime$)
ws.Cells(Cell_Cnt+i,3) = DLogVal("ANA2", nowTime$)
next i
ws.Calculate
XelFile.Save
XelApp.Quit
end if
End Sub
///////////////////실시간 데이터수집
Sub OutputFile2()
flagD = GetTagVal("save_start2")
if flagD = 1 then
start_time$ = now()
SetTagVal "start_time2", start_time$
else
start_time$ = GetTagVal("start_time2")
end_time$ = now()
intval = DateDiff("s", start_time$, end_time$)
SetTagVal "interval", cstr(intval)
FileName$ = "D:\EXCEL\" & TimeStr(44) & ".xls"
FileOld$ = "D:\EXCEL\Ex.xls"
If FileExists(FileName$) then
else
FileCopy FileOld$, FileName$
end if
Set XelApp = CreateObject("Excel.Application")
Set XelFile = XelApp.Workbooks.Open(FileName$)
Set ws = XelFile.sheets.item("sheet1")
Cell_Cnt = 1
ws.Cells(Cell_Cnt,1) = "시간"
ws.Cells(Cell_Cnt,2) = "ANA1"
ws.Cells(Cell_Cnt,3) = "ANA2"
for i=1 to intval
setDate$ = DateAdd("s",i,start_time$)
hh$ = hour(setDate$)
mm$ = minute(setDate$)
ss$ = second(setDate$)
nowTime$ = hh$ & "시" & mm$ & "분" & ss$ & "초"
ws.Cells(Cell_Cnt+i,1) = nowTime$
ws.Cells(Cell_Cnt+i,2) = DLogVal("ANA1", nowTime$)
ws.Cells(Cell_Cnt+i,3) = DLogVal("ANA2", nowTime$)
next i
ws.Calculate
XelFile.Save
XelApp.Quit
end if
End Sub
2017년 7월 15일 토요일
세계사편력_자와할랄 네루
간디와 함께 인도의 독립운동을 이끈 지도자이자 초대총리였던 자와할랄 네루가 딸에게 보낸 옥중 편지를 모아 엮은 책.
서구 중심의 역사관을 극복하고 균형된 시각에서 동서양의 역사를 바라본 고전으로 꼽힌다.
고대문명과 그리스-로마문명에서 인도사, 프랑스대혁명과 미국혁명, 러시아혁명을 거쳐 독일에서의 나치집권에 이르기까지 세계사의 중요한 사건들이 포함되어 있다.
2017년 7월 14일 금요일
2017년 7월 11일 화요일
2017년 7월 7일 금요일
2017년 7월 6일 목요일
블루투스로 스텝모터 정역회전제어와 FND표시
#include <SoftwareSerial.h>
SoftwareSerial BTSerial(0, 1);
int A = 2; //L293 연결시작포트
int step_table[4][4] = {
{1, 0, 0, 1}, {1, 1, 0, 0}, {0, 1, 1, 0}, {0, 0, 1, 1}
}; //Full-Step 테이블
int pin = 7; //FND시작포트
int table[16][7] = {
{1, 1, 1, 1, 1, 1, 0}, //0
{0, 1, 1, 0, 0, 0, 0}, //1
{1, 1, 0, 1, 1, 0, 1}, //2
{1, 1, 1, 1, 0, 0, 1}, //3
{0, 1, 1, 0, 0, 1, 1}, //4
{1, 0, 1, 1, 0, 1, 1}, //5
{1, 0, 1, 1, 1, 1, 1}, //6
{1, 1, 1, 0, 0, 1, 0}, //7
{1, 1, 1, 1, 1, 1, 1}, //8
{1, 1, 1, 0, 0, 1, 1}, //9
{1, 1, 1, 0, 1, 1, 1}, //A
{0, 0, 1, 1, 1, 1, 1}, //B
{0, 0, 0, 1, 1, 0, 1}, //C
{0, 1, 1, 1, 1, 0, 1}, //D
{1, 0, 0, 1, 1, 1, 1}, //E
{1, 0, 0, 0, 1, 1, 1} //F
};
void setup()
{
BTSerial.begin(9600);
int i;
for (i = 0; i < 4; i++)
pinMode(A + i, OUTPUT);
pinMode(A0, OUTPUT); //LED1
pinMode(A1, OUTPUT); //LED2
for (i = 0; i < 7; i++)
pinMode(pin + i, OUTPUT);
}
void CW(int myDelay)
{
int i, j, k;
for (i = 0; i < 50; i++)
{
for (j = 0; j < 4; j++)
{
for (k = 0; k < 4; k++)
digitalWrite(A + k, step_table[j][k]);
delay(myDelay);
}
}
}
void CCW(int myDelay1)
{
int i, j, k;
for (i = 0; i < 50; i++)
{
for (j = 0; j < 4; j++)
{
for (k = 0; k < 4; k++)
digitalWrite(A + k, step_table[3 - j][k]);
delay(myDelay1);
}
}
}
void fnd(int num)
{
int i, j;
j = num;
for (i = 0; i < 7; i++)
digitalWrite(pin + i, table[j][i]);
}
void loop()
{
int i, j;
int inData;
if (BTSerial.available())
{
fnd(0);
inData = BTSerial.read();
if (inData == 'A')
{
digitalWrite(A1, 0);
digitalWrite(A0, 1);
for (i = 0; i < 5; i++)
{
CW(10);
fnd(i + 1);
}
}
if (inData == 'B')
{
digitalWrite(A0, 0);
digitalWrite(A1, 1);
for (j = 0; j < 4; j++)
{
CCW(20);
fnd(j + 1);
}
}
}
delay(1000);
}
/*
#include <SoftwareSerial.h>
SoftwareSerial BTSerial(0,1);
int inData;
int LED1 = A0;
void setup()
{
BTSerial.begin(9600);
pinMode(LED1,OUTPUT);
}
void loop()
{
if(BTSerial.available())
{
inData = BTSerial.read();
if (inData == 'A')
digitalWrite(LED1,HIGH);
if (inData == 'D')
digitalWrite(LED1,LOW);
delay(1000);
}
}
*/
2017년 7월 4일 화요일
피드 구독하기:
글 (Atom)