ラベル Nゲージ 自動往復運転コントローラ の投稿を表示しています。 すべての投稿を表示
ラベル Nゲージ 自動往復運転コントローラ の投稿を表示しています。 すべての投稿を表示

2011/01/21

Nゲージ 自動往復運転コントローラに挑戦 その5 発車ベルを追加し、走行確認




Nゲージ 自動往復運転コントローラに挑戦 その4 パーツの作り

センサーの作り







基板の作り


Nゲージ 自動往復運転コントローラに挑戦 その3 プログラム

動作
  GP5/GP3         High → GP1 High , GP0 Low;回転
  ブレーキ5秒/停止5秒     → GP1、GP0 High/Low
  発車音1秒            → GP2
  GP4/GP3         High → GP1 Low ,  GP0 High;逆回転
  ブレーキ5秒/停止5秒     → GP1、GP0 High/Low
  発車音1秒            → GP2
  GP3             High → GP1、GP0 Low;停止


テスト


このテストは往復運転できるかを確認するためです、プログラムに発車音
が追加していません、ブレーキ5秒は停止5秒になっています。


結果
 予定のとおり、Nゲージが自動的に往復運転ができています。
の問題点は強い日差しでセンサーが反応されます、誤動作になります、
解決方法はわからない。
5V100mA LM78L05A、実際に二つセンサーのみで100mAに超えています、
LM78L05Aがかなり熱くなります、部品の変更が必要となります。


プログラム

;Nゲージ 自動往復運転
;--------------------------------
LIST P=12F629
INCLUDE P12F629.INC


CB = _CPD_OFF
CB &= _CP_OFF
CB &= _BODEN_ON
CB &= _MCLRE_OFF
CB &= _PWRTE_ON
CB &= _WDT_OFF
CB &= _INTRC_OSC_NOCLKOUT ;_HS_OSC
__CONFIG    CB


;---------------------------------
MODETEMP      EQU       H'20'
CNT1      EQU       H'21'
CNT2       EQU      H'22'
CNT3       EQU      H'23'
CNT4       EQU      H'24'
CNDIP      EQU       H'25'


;---------------------------------
   ORG         H'0'
   GOTO      START
   ORG         H'4'
GOTO   INIT


SP RETFIE
;---------------------------------


START
BSF STATUS,RP0
MOVLW B'00111000'
MOVWF TRISIO ;0,1,2 出力、他入力
BCF STATUS,RP0
MOVLW B'00000111' ;SETUP DIGITAL I/O MODE
MOVWF CMCON ;SETUP DIGITAL I/O MODE


;---------------------------------
INIT


;---------------------------------
MAIN
MOVLW      D'0'
MOVWF      CNDIP
MOVLW      B'00000000'
MOVWF      GPIO
MOVWF      MODETEMP


DIP ;電源onoffスイッチ
BTFSS GPIO,3
GOTO DIPIN
GOTO DIP0
DIP0
BTFSC GPIO,3
GOTO DIP0
CALL     TIMER2
INCF     CNDIP,F
MOVF     CNDIP,W
SUBLW D'3'
BTFSC STATUS,Z
CLRF     CNDIP


DIPIN
MOVF     CNDIP,W ;スイッチ
SUBLW D'1'
BTFSC STATUS,Z
CALL     MODE1
BTFSC GPIO,4 ;センサー
CALL     MODE1


MOVF     CNDIP,W ;スイッチ
SUBLW D'2'
BTFSC STATUS,Z
CALL     MODE2
BTFSC GPIO,5 ;センサー
CALL     MODE2
  
MOVF     CNDIP,W
SUBLW D'0'
BTFSC STATUS,Z
CALL     STOP
GOTO DIP


MODE1
MOVLW D'1'
MOVWF CNDIP
MOVLW B'00000001'
ANDWF MODETEMP,W
BTFSC STATUS,Z
CALL     STOPS
MOVLW B'00000001'
MOVWF GPIO
MOVWF MODETEMP
RETURN


MODE2
MOVLW D'2'
MOVWF CNDIP
MOVLW B'00000010'
ANDWF MODETEMP,W
BTFSC STATUS,Z
CALL     STOPS
MOVLW B'00000010'
MOVWF GPIO
MOVWF MODETEMP
RETURN


STOP
MOVLW D'0'
MOVWF CNDIP
MOVLW B'00000000'
MOVWF GPIO
CLRF    CNDIP
CLRF    MODETEMP
RETURN


STOPS
MOVLW B'0000000'
MOVWF GPIO
CALL     TIMER4
RETURN




;4MHz TIMER-----------------------
TIMER1 MOVLW D'25' ;0.1ミリ秒
MOVWF CNT1
LOOP1 NOP
DECFSZ CNT1,1
GOTO LOOP1
RETURN


TIMER2 MOVLW D'100' ;10ミリ秒
MOVWF CNT2
LOOP2 NOP
CALL    TIMER1
DECFSZ CNT2,1
GOTO LOOP2
RETURN


TIMER3 MOVLW D'50' ;0.5秒
MOVWF CNT3
LOOP3 NOP
CALL    TIMER2
DECFSZ CNT3,1
GOTO LOOP3
RETURN


TIMER4 MOVLW D'10' ;5秒
MOVWF CNT4
LOOP4 NOP
CALL    TIMER3
DECFSZ CNT4,1
GOTO LOOP4
RETURN


;---------------------------------
;発車サイン音






;---------------------------------
END





2011/01/04

Nゲージ 自動往復運転コントローラに挑戦 その1 概要

次の動作を実現したい

1.レールに走っている電車はセンサーAとセンサーBの間で往復運転するようにします。

2.電車はセンサーに検出されたとき、いったん停車し、しばらく(一秒ぐらい)してから
逆方向に発車する。


本日に購入した部品は下記のとおり
秋月電子
    TPR-105F フォトリフレクタ 1個 50円
    http://akizukidenshi.com/download/TPR-105F.pdf
    TA7267BP モータドライバ  2個 300円
    http://akizukidenshi.com/download/ta7267bp.pdf


千石電商
    信号伝達コネクタ(黒)1×4 1個 20円
    信号伝達コネクタ用ピン、2550シリーズ信号伝達コネクタ
    安くしてくれないかな!