検索
AND検索
OR検索
トップ
|
リロード
|
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
ライントレースカー(コースアウト処理追加) をテンプレートにして作成
★トップ(目次)ページへ
★情報交換掲示板
08/08/14設置
今日の10件
PICとMikroC
(36)
純正:PICkit3 3,900円
(3)
XC8:変数の型のタイプと値の範囲
(3)
LEDの明るさを変える(PWM)(16F886)
(3)
スリープ(PICの消費電力を最小に)
(2)
16F1827のconfig設定
(2)
TVリモコン信号の受信機
(2)
InterWiki
(2)
Writer509 3,500円
(2)
整形ルール
(1)
最新の15件
2024-09-28
MikroCの特徴
スリープ(PICの消費電力を最小に)
2024-09-03
RecentDeleted
2024-08-30
Get Started with Online Dating Site No Sign Up
Try Out Top Dating Platform No Payment
Guide To Online Local Hookup App No Payment
Try Out Top Meetup Platforms Online
Get Started with Discreet Dating Site
Get Started with Local Hookup Apps To For Just Sex
Try Out Online Local Dating Site No Cost
Get Started with Best Dating Apps For Quick Sex
Take A Look Free OnlyFans Accounts
Take A Look Premium OnlyFans Accounts 2024
Our Advice Top OF Profiles
Our Advice Premium OnlyFans Girls In 2024
#amazon(4798109223)
Total:0/Today:0
開始行:
閲覧総計:&counter(); (本日:&counter(today); 昨日...
*ライントレースカー(コースアウト処理追加) [#p3d7b6a5]
「基本機能のみ搭載」では、カーブの際、ラインセンサ2ケ共...
はずれ、車がラインから外れてしまいました。
この問題を解決する為、今回はラインの外れ方の履歴をold_fla...
ラインセンサ2ケ共に外れた際の動作指示を定義しました。
【結果】ライントレースカーは常に正しくラインに沿って走行...
なりました。 06/11/05
|&attachref(,zoom,150x150,button){新しい写真添付};|&attac...
/**
* ライントレースカー(コースアウト処理追加)
*
* PIC 16F628A
* 発信器:内臓4MHz
* 電源:PIC 乾電池4本(6.0V) モータ 乾電池3本(4.5V)
* ライトセンサー:RA0, RA1
* モーター:左 RB6,RB7 右 RB0,RB1
*
* Device Flags: _BODEN_OFF _BOREN_OFF _CP_OFF _PWRTE_ON
* _WDT_OFF _LVP_OFF _MCLRE_OFF _INTRC_OSC_NOCLKOUT
*
* プログラム言語:MikroC v6.0
*/
void main() { //メインプログラム
unsigned short int old_flag; //完全コースアウト前の状...
//マイコンの初期化
PORTA = 0b00000000; //PORTAの中身をきれいにする
PORTB = 0b00000000; //PORTBの中身をきれいにする
CMCON = 0b00000111; //PORTAをデジタル入出力使用に設定
TRISA = 0b00000011; //PORTAをRA0,1を1:入力に、他は0:出...
TRISB = 0b00000000; //PORTBを8つ全て0:出力に設定
//マイコンの初期化終わり
do{ //doとwhileの間を繰り返す
if(PORTA.F1 == 1) { //左センサー黒
if(PORTA.F2 == 1) { //右センサー黒
//車がラインの上にある
//左右モーター前進
PORTB.F2 = 1; //左モーター前進
PORTB.F3 = 0;
PORTB.F5 = 1; //右モーター前進
PORTB.F4 = 0;
old_flag = 0; //両センサコース上
} else { //右センサ白
//右にコースアウト
//左モーター停止、右モーター前進で
//コースにもどる
PORTB.F2 = 0; //左モーター停止
PORTB.F3 = 0;
PORTB.F5 = 1; //右モーター前進
PORTB.F4 = 0;
old_flag = 1; //右にコースアウト
}
} else { //左センサー白
if(PORTA.F2 == 1) { //右センサー黒
//左にコースアウト
//左モーター前進、右モーター停止で
//コースにもどる
PORTB.F2 = 1; //左モーター前進
PORTB.F3 = 0;
PORTB.F5 = 0; //右モーター停止
PORTB.F4 = 0;
old_flag = 2; //左にコースアウト
} else { //右センサー白
//左右センサー共に白、完全コースアウトした場合
if(old_flag == 1) {
//右にコースアウト
//左モーター停止、右モーター前進で
//コースにもどる
PORTB.F2 = 0; //左モーター停止
PORTB.F3 = 0;
PORTB.F5 = 1; //右モーター前進
PORTB.F4 = 0;
old_flag = 1; //右にコースアウト
} else {
//左にコースアウト
//左モーター前進、右モーター停止で
//コースにもどる
PORTB.F2 = 1; //左モーター前進
PORTB.F3 = 0;
PORTB.F5 = 0; //右モーター停止
PORTB.F4 = 0;
old_flag = 2; //左にコースアウト
}
}
}
} while(1); //doとwhileの間を繰り返す
} //メインプログラム終わり
★この情報は役に立ちましたか?
#vote(はい[33],いいえ[33])
終了行:
閲覧総計:&counter(); (本日:&counter(today); 昨日...
*ライントレースカー(コースアウト処理追加) [#p3d7b6a5]
「基本機能のみ搭載」では、カーブの際、ラインセンサ2ケ共...
はずれ、車がラインから外れてしまいました。
この問題を解決する為、今回はラインの外れ方の履歴をold_fla...
ラインセンサ2ケ共に外れた際の動作指示を定義しました。
【結果】ライントレースカーは常に正しくラインに沿って走行...
なりました。 06/11/05
|&attachref(,zoom,150x150,button){新しい写真添付};|&attac...
/**
* ライントレースカー(コースアウト処理追加)
*
* PIC 16F628A
* 発信器:内臓4MHz
* 電源:PIC 乾電池4本(6.0V) モータ 乾電池3本(4.5V)
* ライトセンサー:RA0, RA1
* モーター:左 RB6,RB7 右 RB0,RB1
*
* Device Flags: _BODEN_OFF _BOREN_OFF _CP_OFF _PWRTE_ON
* _WDT_OFF _LVP_OFF _MCLRE_OFF _INTRC_OSC_NOCLKOUT
*
* プログラム言語:MikroC v6.0
*/
void main() { //メインプログラム
unsigned short int old_flag; //完全コースアウト前の状...
//マイコンの初期化
PORTA = 0b00000000; //PORTAの中身をきれいにする
PORTB = 0b00000000; //PORTBの中身をきれいにする
CMCON = 0b00000111; //PORTAをデジタル入出力使用に設定
TRISA = 0b00000011; //PORTAをRA0,1を1:入力に、他は0:出...
TRISB = 0b00000000; //PORTBを8つ全て0:出力に設定
//マイコンの初期化終わり
do{ //doとwhileの間を繰り返す
if(PORTA.F1 == 1) { //左センサー黒
if(PORTA.F2 == 1) { //右センサー黒
//車がラインの上にある
//左右モーター前進
PORTB.F2 = 1; //左モーター前進
PORTB.F3 = 0;
PORTB.F5 = 1; //右モーター前進
PORTB.F4 = 0;
old_flag = 0; //両センサコース上
} else { //右センサ白
//右にコースアウト
//左モーター停止、右モーター前進で
//コースにもどる
PORTB.F2 = 0; //左モーター停止
PORTB.F3 = 0;
PORTB.F5 = 1; //右モーター前進
PORTB.F4 = 0;
old_flag = 1; //右にコースアウト
}
} else { //左センサー白
if(PORTA.F2 == 1) { //右センサー黒
//左にコースアウト
//左モーター前進、右モーター停止で
//コースにもどる
PORTB.F2 = 1; //左モーター前進
PORTB.F3 = 0;
PORTB.F5 = 0; //右モーター停止
PORTB.F4 = 0;
old_flag = 2; //左にコースアウト
} else { //右センサー白
//左右センサー共に白、完全コースアウトした場合
if(old_flag == 1) {
//右にコースアウト
//左モーター停止、右モーター前進で
//コースにもどる
PORTB.F2 = 0; //左モーター停止
PORTB.F3 = 0;
PORTB.F5 = 1; //右モーター前進
PORTB.F4 = 0;
old_flag = 1; //右にコースアウト
} else {
//左にコースアウト
//左モーター前進、右モーター停止で
//コースにもどる
PORTB.F2 = 1; //左モーター前進
PORTB.F3 = 0;
PORTB.F5 = 0; //右モーター停止
PORTB.F4 = 0;
old_flag = 2; //左にコースアウト
}
}
}
} while(1); //doとwhileの間を繰り返す
} //メインプログラム終わり
★この情報は役に立ちましたか?
#vote(はい[33],いいえ[33])
ページ名: