\tgǂꂱ
\tgǂꂱ

̃vÓCiŝmĔႵXeAOC
^[Ԃ͖0.5bŒłD
0.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Ƃ̊֌WvZ֐D


|||||||||||||||||||||||||||||||||

ā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


< ŐL b ̋L >


ページトップに戻る



ESP32 Wifi Bluetooth開発ボード

Arduino Nano Every
​​
Raspberry Pi pico

FPGA XILINX Artix-7