NXC 雙光感應器車 可過十字路口

早先的單光感應器遇到交叉口就沒輒了,因為它的原理是沿著線的”邊緣”來走,所以不能直走通過十字路口。

宗翰老師幫我們作一台示範機器人,先來看一下影片:

在這裡提供宗翰老師寫的程式碼給大家參考:

1號光感在機器人的左邊,2號在右邊,所以我們會有四種狀況,

1黑2白: 機器人向右前方走碰到了黑線  ->   左前方修正

1白2黑: 機器人向右前方走碰到了黑線  ->   右前方修正

1白2白: 機器人位於軌跡線的正上方  ->   直行

1黑2黑: 機器人碰到十字路口  ->   直行

再使用依個無限迴圈就完成囉~

#define Light 45  //光值
#define time 100 //轉動時間
#define pwr 70    //馬達電力

task main()
{
     SetSensorLight(IN_1);
     SetSensorLight(IN_2);

     while(true)
     {
            int a = SENSOR_1;
            int b = SENSOR_2;

            if(a>Light && b>Light)
            {
                  OnFwdSync(OUT_AC,pwr,0);
                  Wait(time);
                  Off(OUT_AC);
            }
            else if(a<Light && b> Light)
            {
                  OnFwdSync(OUT_AC,pwr,0);
                  Wait(time);
                  Off(OUT_AC);
            }
            else if(a>Light && b< Light)
            {
                  OnFwd(OUT_A,pwr);
                  OnFwd(OUT_C,10);
                  Wait(time);
                  Off(OUT_AC);
            }
            else
            {
                 OnFwd(OUT_A,10);
                 OnFwd(OUT_C,pwr);
                 Wait(time);
                 Off(OUT_AC);
            }
     }
}//end of main
Linw Follow – Dual light sensor

About CAVEDU 阿吉 - 雜工 (2521 Articles)
CAVEDU 教育團隊 打雜
Contact: Website

2 Comments on NXC 雙光感應器車 可過十字路口

  1. 我有貼過,可是不行,他說Compile Failed

                                                    Compile failure

    能幫我看出了甚麼問題嗎?

    [版主回覆06/15/2009 11:22:12]

    翔翔:

        修正過了, 你再試試看好嗎?

                                                  阿吉

  2. 可以了,謝謝

    [版主回覆06/16/2009 10:39:26]不客氣, ㄎㄎ.

Leave a comment

Your email address will not be published.


*