@\tgǂꂱ@
̃vÓCiŝmĔႵXeAOC ^[Ԃ͖0.5bŒłD0.5b^[C0.5biłQiK̑ŝHv̗]n܂D
ṓC^[ԂςɂĂ݂܂D
ႦCisړInƐ̏ꍇ180x^[킯łC ̃vO0.5b^[Ė߂̂𐔉JԂă^[邱 ɂȂ܂D^[ԂςɂƁC傫Ȋpx^[ꍇ̓XeA Oςɐĉ肫܂ł邱Ƃł悤ɂȂ ܂D
Ȃ̂́C^[ԂȂƁC^[Ɏf[^GPSʂ o͂Ă܂CmȕʂƂ̘傫ȂĂ܂\邱ƂŁC 邽߂ɁC^[I1bȏ㒼Ԃۂĕʌo邱 ɂ܂D
GPSf[^XṼtOG0P̂C0,1,2̒l悤ɂāC ^[͂G=0,^[IゆG=2̂ƂɃXeAO 悤ɂ܂D
ős̃[v肵܂D p[^IŜ̃XgAbv܂D Ƃ́CWCɂ]px̐ƁCQ̉ǂłD
while (SW_START==1){ // X^[gXCb`ꂽƂ̓[v甲o
// őx
if (spR>SPDH) pos2=POSH; else pos2=POSL;
// ŕʌvłꍇifG=2ĵ݃XeAO
if (fG==2) {
fG=0;
gps_val();
gps_cal(); // ݒnƃEFC|CgƂ̊WvZ
disp_dwp(); // EGC|CgƂ̍\
// pxɉĕɑǂDxɂlρH
k=POSC-dd*p1;
if (k< STRMAX) pos1=STRMAX; // Eőp
else if (k>STLMAX) pos1=STLMAX; // őp
else pos1=k;
pos3=pos1; // XeAOƒgZT
timP=abs(dd)*p2; // XeAĂ鎞Ԏw
}
if (timP>0) fG=0; // ^[rGPSMĂlXVȂ
else pos1=POSC; // ^C}AŃJEg_ECԂXeAO߂
if (disU< URFMIN) kaihi(); // QoƂ͉s
// EFC|CgƂ̋߁C|CgXV܂͑sIf
if (dr < wr){
pos1=pos2=POSC; pause(30000); // 莞ԑs~
np++; if (np>wp) break; // EFC|CgXVCsIf
slow_start(); // ᑬsň莞ԑOiď̕
}
}
pos1=pos2=POSC; // [vƂ̓T[{ʒu
}
gps_cal()͌ݒnƃEFC|CgƂ̊WvZD
|||||||||||||||||||||||||||||||||
āC^[̊pxXeAO̐pƃ^[ԂŐ䂷̂ł͂ȂC WCgāCʂ̕v܂ʼn]悤ɏĂ ܂DiC`FbN͂܂j
̂قCsxɈˑɃ^[ł̂ŗǂ͂D ^[̊pxƂGPS瓾ʂ̌덷傫ȂC ʂɒiĂ܂Ƃ邽߁C̎̃tOZbgO ɂĂ݂܂D
while (SW_START==1){ // X^[gXCb`ꂽƂ̓[v甲o
// őx
if (spR>SPDH) pos2=POSH; else pos2=POSL;
// ŕʌvłꍇifG=2ĵ݃XeAO
if (fG==2) {
fG=0;
gps_val();
gps_cal(); // ݒnƃEFC|CgƂ̊WvZ
disp_dwp(); // EGC|CgƂ̍\
// pxɉĕɑǂDxɂlρH
k=POSC-dd*p1;
if (k< STRMAX) pos1=STRMAX; // Eőp
else if (k >STLMAX) pos1=STLMAX; // őp
else pos1=k;
pos3=pos1; // XeAOƒgZT
gyItg=0;
}
if (abs(gyItg>>12)>abs(dd*p2)) pos1=POSC; // WCŊpxj^CwpxŃXeAO߂
if (pos1!=0 && abs(dd)>45) fG=0; // ^[r^[px傫CGPSMĂlXVȂ
if (disU< URFMIN) kaihi(); // QoƂ͉s
// EFC|CgƂ̋߁C|CgXV܂͑sIf
if (dr < wr){
pos1=pos2=POSC; pause(30000); // 莞ԑs~
np++; if (np >wp) break; // EFC|CgXVCsIf
slow_start(); // ᑬsň莞ԑOiď̕
}
}
pos1=pos2=POSC; // [vƂ̓T[{ʒu
}
||||||||||||||||||||||||||||||||||
Q̕@
mF͂܂łCQ̕@l܂D
gZTXeAOɍEɐUďQmCQ̖ ɃXeAOɃItZbgďQ邱Ƃɂ܂D ܂CgZTUȂZT̒lj^Ă݂܂D
gZTEɐU
kbcCgZT̑lCɐU Ƃ̒lCEɐUƂ ̒lłDlقNj߂ɏQ邱ƂɂȂ܂D
Ƃ̓XeAOɏQƂ̋ɔႵItZbg܂D
// pxɉĕɑǂD
k=POSC-dd*p1;
if (disR<0x74) k+=(0x74-disR)/10; // EQɑ
if (disL<0x74) k-=(0x74-disL)/10; // Qɑ
if (k< STRMAX) pos1=STRMAX; // Eőp
else if (k>STLMAX) pos1=STLMAX; // őp
else pos1=k;
gZTUȂ狗ɂ̂́C^C}[`̒Ɏ̂悤
Lq܂D
// Q̍Eô߂̃T[{삨ьv
cntW++; if (cntW>4000) cntW=0;
if (cntW<2000) pos3=pos1-3; else pos3=pos1+3; // XeAOɍEɐU
if (cntW>1900 && cntW<2000) disR=disU;
if (cntW>3900 && cntW<4000) disL=disU;
ǂGPS{bgJ[̃\[XiH8-3664j
GPS{bgJ[eXgs̓iWCgƒgZTɂQj
|
ESP32 Wifi Bluetooth開発ボード |
|
Arduino Nano Every |
|
Raspberry Pi pico |
|
FPGA XILINX Artix-7 |
