RSS    

   Курсовая работа: Применение автоматизированного адаптивного интерферометра для исследования наносмещений микрообъектов

buff[rcv]=0;

for(int i = 0; i< rcv; i++)

str += buff[i];

j = strchr(buff, '+');

res = atoi(j);

if (j==0)

{

j = strchr(buff, '-');

res = atoi(j); //в res здесь храниться текущие положение

}

}//ожидание прихода подвижки в заданное место

modul=res-gto0;

if (modul<0) modul=-modul;

} while (modul>20);

do

{

Sleep(800);

//изменение активного мотора

sg.Send(ctrlkey2, 1);

sg.Send(axsis1_2, 1);

tp="tp";

LocBuf2 = tp.GetBuffer(128);

sg.Send(LocBuf2, 2);

tp.ReleaseBuffer();

//enter

sg.Send(ent2, 1);

Sleep(400); //организуем паузу чтобы контроллер успел ответить

//считаем текущую позицию//

char buff[128];

rcv = sg.Recv(buff, sizeof(buff));

elmbuff=rcv-1;

buff[rcv]=0;

CString str;

for(int i = 0; i< rcv; i++)

str += buff[i];

 j = strchr(buff, '+');

res = atoi(j);

if (j==0)

{

j = strchr(buff, '-');

res = atoi(j); //в res здесь храниться текущие положение

}//ожидание прихода подвижки в заданное место

modul=res-gto1;

if (modul<0) modul=-modul;

}while (modul>20);

MessageBox("peremecheno","ok", MB_ICONINFORMATION);

//UpdateData(false);

//////////////организуем сканирование////////////////

int tape0=0;

int tape1=0;

int tape0t=0; //текущий проход

int tape1t=0;

//CString tapeaxsis0_1;

//GetDlgItemText(IDC_TAPEAXSIS0,tapeaxsis0_1);

//tape0=atoi(tapeaxsis0_1);

CString tapeaxsis1_1;

GetDlgItemText(IDC_TAPEAXSIS1,tapeaxsis1_1);

tape1=atoi(tapeaxsis1_1);

//перемещение по оси 1//

while (tape1t<tape1)

{

//премещение по оси 0//

//UpdateData(false);

//CString mraxsis0_mr;

//mraxsis0_mr =itoa(posnum0_mr,mraxsis0_mr.GetBuffer(10),10);

//this->m_pastcontrol.SetWindowText("");

//CString tape1tstr;

//tape1tstr =itoa(tape1t,tape1tstr.GetBuffer(10),10);

//this->m_past=tape1tstr;

tape1t++;

//изменение активного мотора

char ctrlkey=0x01;

char* ctrlkey2 = &ctrlkey;

sg.Send(ctrlkey2, 1);

int len=1;

char axsis0='0';

char* axsis0_2 = &axsis0;

sg.Send(axsis0_2, 1);

CString tp="tp";

char* LocBuf2 = tp.GetBuffer(128);

sg.Send(LocBuf2, 2);

tp.ReleaseBuffer();

//enter

char ent=0x0D;

char* ent2 = &ent;

sg.Send(ent2, 1);

Sleep(600); //организуем паузу чтобы контроллер успел ответить

//считаем текущую позицию//

char buff1[128];

int rcv = sg.Recv(buff1, sizeof(buff1));

buff1[rcv]=0;

char* j = strchr(buff1, '+');

int res = atoi(j);

if (j==0)

{

j = strchr(buff1, '-');

res = atoi(j); //в res здесь храниться текущие положение

}

CString mraxsis0_2; //сюда записывается занчение е окошка edit axsis0

GetDlgItemText(IDC_MRAXSIS0,mraxsis0_2);

posnum0=atoi(mraxsis0_2);

posnum0_mr=posicino00+posnum0/2; //перемещаемся вперед

CString mraxsis0_mr;

mraxsis0_mr =itoa(posnum0_mr,mraxsis0_mr.GetBuffer(10),10);

//выполним перемещение//

CString mr="MA";

char* LocBuf8 = mr.GetBuffer(128);

sg.Send(LocBuf8, 2);

mr.ReleaseBuffer();

len=mraxsis0_mr.GetLength();

char* LocBuf9 = mraxsis0_mr.GetBuffer(128);

sg.Send(LocBuf9, len);

mraxsis0_mr.ReleaseBuffer();//enter

sg.Send(ent2, 1);

gto0=posnum0_mr;

//считывание данных из файла//

CString inputfile;

GetDlgItemText(IDC_DATAEXCHANGE, inputfile);

CString outputfile;

GetDlgItemText(IDC_DATAEXCHANGE2, outputfile);

CString strinput;

CString stroutput;

CStdioFile FileInPut(inputfile, CFile::shareDenyNone);

CStdioFile FileOutPut(outputfile, CFile::modeCreate|CFile::modeNoTruncate|CFile::modeReadWrite|CFile::shareDenyNone);

FileInPut.SeekToEnd();

int positionFileInPut1=FileInPut.GetPosition();

//считывание данных из файла//

Sleep(300);

do

{

Sleep(400);

//изменение активного мотора

sg.Send(ctrlkey2, 1);

sg.Send(axsis0_2, 1);

tp="tp";

LocBuf2 = tp.GetBuffer(128);

sg.Send(LocBuf2, 2);

tp.ReleaseBuffer();

//enter

sg.Send(ent2, 1);

Sleep(800); //организуем паузу чтобы контроллер успел ответить

//считаем текущую позицию//

CString str;

char buff[128];

rcv = sg.Recv(buff, sizeof(buff));

if(rcv > 0)

{

elmbuff=rcv-1;

buff[rcv]=0;

for(int i = 0; i< rcv; i++)

str += buff[i];

j = strchr(buff, '+');

res = atoi(j);

if (j==0)

{

j = strchr(buff, '-');

res = atoi(j); //в res здесь храниться текущие положение

}

}//ожидание прихода подвижки в заданное место

modul=res-gto0;

if (modul<0) modul=-modul;

} while (modul>20);

//дождемся пока подвижка примет первоночальное положение//

//считывание данных из файла//

FileInPut.SeekToEnd();

FileOutPut.SeekToEnd();

int positionFileInPut2=FileInPut.GetPosition();

FileInPut.Seek(positionFileInPut1, CFile::begin);

CString space=" ";

//char buffstr[128];

for (int positionFileInPutCurrent=FileInPut.GetPosition(); positionFileInPutCurrent<positionFileInPut2; positionFileInPutCurrent=FileInPut.GetPosition())

{

//FileOutPut.ReadString(stroutput);

FileInPut.ReadString(strinput);

char* buffstr = strinput.GetBuffer(128);

int lenstr=strinput.GetLength();

buffstr[lenstr]=0;

char* j = strchr(buffstr, ',');

stroutput=j+1;

FileOutPut.WriteString(stroutput);

FileOutPut.WriteString(space);

}

//перемещение по оси 1//

FileOutPut.WriteString("\r\n");

//изменение активного мотора//

sg.Send(ctrlkey2, 1);

 len=1;

char axsis1='1';

char* axsis1_2 = &axsis1;

sg.Send(axsis1_2, 1);

tp="tp";

LocBuf2 = tp.GetBuffer(128);

sg.Send(LocBuf2, 2);

tp.ReleaseBuffer();

//enter

sg.Send(ent2, 1);

Sleep(300); //организуем паузу чтобы контроллер успел ответить

//считаем текущую позицию//

char buff4[128];

rcv = sg.Recv(buff4, sizeof(buff4));

buff4[rcv]=0;

j = strchr(buff4, '+');

res = atoi(j);

if (j==0)

{

j = strchr(buff4, '-');

res = atoi(j); //в res здесь храниться текущие положение

}

CString mraxsis1_2; //сюда записывается занчение е окошка edit axsis0

GetDlgItemText(IDC_MRAXSIS1,mraxsis1_2);

int posnum1=atoi(mraxsis1_2);

int posnum1_mr=pos01+tape1t*posnum1/tape1;

CString mraxsis1_mr;

mraxsis1_mr =itoa(posnum1_mr,mraxsis1_mr.GetBuffer(10),10);

gto1=posnum1_mr;

//выполним перемещение//

mr="MA";

LocBuf8 = mr.GetBuffer(128);

sg.Send(LocBuf8, 2);

mr.ReleaseBuffer();

len=mraxsis1_mr.GetLength();

LocBuf9 = mraxsis1_mr.GetBuffer(128);

sg.Send(LocBuf9, len);

mraxsis1_mr.ReleaseBuffer();

//enter

sg.Send(ent2, 1);

Sleep(300);

do

{

Sleep(400);

//изменение активного мотора

sg.Send(ctrlkey2, 1);

len=1;

char axsis1='1';

char* axsis1_2 = &axsis1;

sg.Send(axsis1_2, 1);

sg.Send(ctrlkey2, 1);

sg.Send(axsis1_2, 1);

tp="tp";

LocBuf2 = tp.GetBuffer(128);

sg.Send(LocBuf2, 2);

tp.ReleaseBuffer();

//enter

sg.Send(ent2, 1);

Sleep(800); //организуем паузу чтобы контроллер успел ответить

//считаем текущую позицию//

CString str;

char buff[128];

rcv = sg.Recv(buff, sizeof(buff));

if(rcv > 0)

{

elmbuff=rcv-1;

buff[rcv]=0;

for(int i = 0; i< rcv; i++)

str += buff[i];

j = strchr(buff, '+');

res = atoi(j);

if (j==0)

{

j = strchr(buff, '-');

res = atoi(j); //в res здесь храниться текущие положение

}

}//ожидание прихода подвижки в заданное место

modul=res-gto1;

if (modul<0) modul=-modul;

} while (modul>20);

//переведем подвижку в первоначальное положение//

//изменение активного мотора//

Sleep(300);

 ctrlkey=0x01;

 ctrlkey2 = &ctrlkey;

 sg.Send(ctrlkey2, 1);

 len=1;

 axsis0='0';

 axsis0_2 = &axsis0;

sg.Send(axsis0_2, 1);

tp="tp";

LocBuf2 = tp.GetBuffer(128);

sg.Send(LocBuf2, 2);

tp.ReleaseBuffer();

//enter

ent=0x0D;

ent2 = &ent;

sg.Send(ent2, 1);

Sleep(300); //организуем паузу чтобы контроллер успел ответить

//считаем текущую позицию//

charbuff7[128];

rcv = sg.Recv(buff7, sizeof(buff7));

elmbuff=rcv-1;

buff7[rcv]=0;

CStringstr7;

for(i = 0; i< rcv; i++)

str7 += buff7[i];

j = strchr(buff7, '+');

res = atoi(j);

if (j==0)

{

j = strchr(buff7, '-');

res = atoi(j); //в res здесь храниться текущие положение

}

 //сюда записывается занчение е окошка edit axsis0

GetDlgItemText(IDC_MRAXSIS0,mraxsis0_2);

posnum0=atoi(mraxsis0_2);

posnum0_mr=pos00; //перемещаемся назад

mraxsis0_mr =itoa(posnum0_mr,mraxsis0_mr.GetBuffer(10),10);

//выполним перемещение на нулевую позицию//

Страницы: 1, 2, 3, 4, 5, 6


Новости


Быстрый поиск

Группа вКонтакте: новости

Пока нет

Новости в Twitter и Facebook

                   

Новости

© 2010.