導航:首頁 > 編程語言 > 交通燈電路編程教程

交通燈電路編程教程

發布時間:2023-06-01 19:36:22

① 誰會用西門子PLC編交通燈的程序啊

(1)
控制要求

1)
交通信號燈系統由一啟動開關SB1控制,此開關接通時,信號燈系統開始運行;當該開關斷開時,所有的信號燈均熄滅;
2)
南北方向綠燈與東西方向綠燈不能同時亮,一旦出現此情況應關閉信號燈系統;並發出報警信號;
3)
南北紅燈亮維持30秒,此時東西方向綠燈也亮並維持25秒,然後進入閃爍3秒,東西方向黃燈點亮維持2秒,然後黃燈熄滅;接著東西方向紅燈點亮;同時,南北方向紅燈熄滅,綠燈點亮;
4)
東西方向紅燈點亮維持30秒,南北綠燈點亮維持25秒,然後閃爍3秒後熄滅,黃燈點亮2秒後熄滅;這時南北紅燈點亮,東西綠燈點亮;
5)
以上南北、東西交通信號燈周而復始的交替工作狀態,指揮著十字路口的交通;
(2)畫出東西、南北方向交通燈的時序圖,以作編程時參考;
(3)畫出系統的電氣原理圖、控制流程圖;
(4)對I/O進行分配,並標注在電氣原理圖上;
輸入:
SB1(啟動開關)
:
X0
輸出:
故障警告燈:
Y6
南方向/北方向綠燈:Y5
南方向/北方向黃燈:Y4
南方向/北方向紅燈:Y3
東方向/西方向綠燈:Y2
東方向/西方向黃燈:Y1
東方向/西方向紅燈:Y0
採納哦

② 用單片機做交通燈,這么做

基於單片機的交通燈設計
時間:2010-12-08 21:43:12 來源: 作者:
一、 系統功能要求:
1. 設計任務在一十字路口設置交通燈,並用單片機對其進行合理的控制。
時間方向 控制要求
白天 東西 綠燈 黃燈 紅燈 南北 紅燈 綠燈 黃燈
晚上 東西 黃燈 南北 紅燈
2.總體設計方案現在流行的一種設計為兩主幹線相交的十字路。本設計採用一主幹道(南北方向),一從幹道(東西方向)的路口,即主幹道的通行時間為從幹道的2倍。在正常情況下,兩幹道的交通燈按圖1進行轉換,並以倒計數的方式將剩餘時間顯示在每個幹道對應的兩位LED上;另發揮部分為當出現緊急情況時,路口的交通燈全為紅燈,緊急情況解除時,恢復到原來的狀態。
二、 總體設計方案提示:
1.假設一個十字路口為東西南北走向。初始狀態0為東西紅燈,南北紅燈。然後轉狀態1東西綠燈通車,南北紅燈。過一段時間轉狀態。
2.東西綠燈滅,黃燈閃爍幾次,南北仍然紅燈。再轉狀態。
3.南北綠燈通車,東西紅燈。過一段時間轉狀態。
4.南北綠燈滅,閃幾次黃燈,延時幾秒,東西仍然紅燈。最後循環至狀態1。
三.硬體設計
電路原理圖如下:

四、軟體設計
1、 流程圖

2、程序設計
ORG 0000H
MOV P0,#00H ;確保P0為低電位
lJMP MAIN0
ORG 0030H
MAIN0: MOV 30H,#08H
MOV R6,#00H
MOV R7,#00H
MOV DPTR,#TABLE ;取數碼管的解碼
MOV TMOD,#01H ;設計定時方式及時間
MOV TL0,#0CDH
MOV TH0,#0BH
SETB TR0
MOV IE,#00H
MAIN: MOV P1,#0F3H ;南北綠燈,東西紅燈
MOV R6,#1EH ;紅燈30s倒計時
MOV R7,#19H ;綠燈25s倒計時
MAIN1:CALL DELAY ;1S延時子程序
JB P0.1,REL1 ;判斷是否有東西方向按鈕按下
CJNE R7,#00H,MAIN1 ;判斷綠燈25s是否倒計完
MOV P1,#0F5H ;南北黃燈,東西紅燈
MAIN2:CALL DELAY
MOV R7,#00H ;紅燈繼續倒計時,黃燈閃爍,保持0s
CPL P1.1 ;黃燈閃爍
CJNE R6,#00H,MAIN2 ;判斷紅燈是否倒計時完
MOV P1,#0DEH ;南北紅燈,東西綠燈
MOV R7,#1EH
MOV R6,#19H
MAIN3:CALL DELAY
JB P0.0,REL2
CJNE R6,#00H,MAIN3
MOV P1,#0EEH
MAIN4:CALL DELAY
MOV R6,#00H
CPL P1.4
CJNE R7,#00H,MAIN4
JMP MAIN
REL1:MOV P1,#0F5H ;東西方向按鈕按下,南北方向強制由綠燈變成黃燈警告
MOV R6,#05H
MOV R7,#00H
JMP MAIN2
REL2:MOV P1,#0EEH ;南北方向按鈕按下,東西方向強制由綠燈變成黃燈警告
MOV R7,#05H
MOV R6,#00H
JMP MAIN4
;1s延時子程序
DELAY:MOV A,R6 ;進行南北方向倒計時時間的十進制調整
MOV B,#0AH
DIV AB
MOVC A,@A+DPTR ;找尋相應的數碼管代碼
MOV P2,#01H
MOV P3,A ;輸出個位
MOV R4,#4 ;降低動態顯示頻率
LOOP2:MOV R3,#125
LOOP3:DJNZ R3,LOOP3
DJNZ R4,LOOP2
MOV A,B
MOVC A,@A+DPTR
MOV P2,#02H ;輸出十位
MOV P3,A
MOV R4,#4
LOOP4:MOV R3,#125
LOOP5:DJNZ R3,LOOP5
DJNZ R4,LOOP4
MOV A,R7 ;進行東西方向倒計時時間的十進制調整
MOV B,#0AH
DIV AB
MOVC A,@A+DPTR
MOV P2,#04H
MOV P3,A
MOV R4,#4
LOOP6:MOV R3,#125
LOOP7:DJNZ R3,LOOP7
DJNZ R4,LOOP6
MOV A,B
MOVC A,@A+DPTR
MOV P2,#08H
MOV P3,A
MOV R4,#4
LOOP8:MOV R3,#125
LOOP9:DJNZ R3,LOOP9
DJNZ R4,LOOP8
JBC TF0,LOOP ;判斷是否計滿125ms
AJMP DELAY
LOOP:MOV TL0,#0CDH ;計滿125ms重新給定時器賦值
MOV TH0,#0BH
MOV A,30H
DEC A
MOV 30H,A
JNZ DELAY ;判斷是否計滿8次125ms,即1s
DEC R6 ;計滿1s,東西倒計時減1,南北倒計時減1
DEC R7
MOV 30H,#08H ;重新1s次數,重新計時
RET
TABLE:DB 0C0H,0F9H,0A4H,0B0H,99H ;相應數值的數碼管代碼
DB 92H,82H,0F8H,80H,90H
END

③ 單片機交通指示燈編程

這是我做的一個交通燈控制電路,包括電路圖,程序,程序詳細注釋說明,模擬圖;你可以看一下;

三、硬體電路設計

此電中路設計採用AT89C51單片機,74LS47(數碼管驅動)74LS373(數碼管驅動輸出鎖存),8個數碼管顯示其延時值,四個紅、黃、綠指示燈。硬體設計關鍵在於,延時顯示時,要考慮到當個位數字顯示時,要確保十位數字顯示輸出的不變。因此,可加輸出鎖存器。在延時最後三秒時,要讓黃燈進行閃爍,並同時顯示數字(這一步在軟體設計上很關鍵)。

(1)電路連接圖:

三、軟體程序(C語言)

以下是整個設計的軟體程序,直接可以編譯成*。Hex代碼。通過以上電路,下載到單片機,可直接運行。

//*****************************//

//程序名:十字路口交通燈控制

//編寫人:黃庭劍

//初寫時間:2009年1月2日

//程序功能:南北為車行道,延時60秒;東西方向為人行道,延時20秒,且在最後3秒黃燈顯示2秒鍾再實現切換.

//CPU說明:AT89C51型單片機;24MHZ晶體振盪器

//完成時間:2009年1月6日

//*****************************//

#include<stdio.h>

#include<reg51.h>

#include<intrins.h>

sfrp0=0x80;

sfrp1=0x90;

sfrp2=0xA0;

sfrp3=0xb0;//這部分內容其實在「#include<reg51.h>」里已經有,但裡面定義的必須區分大小寫,在這里,因為我程序採用的是小寫,reg51.h里對各個埠與寄存器的定義都是大寫,所以在編譯連接時,會報錯,所以,在本設計程序里,我只用到了埠,在這里也就只定義了四個,而沒有去改reg51.h裡面的內容。其實兩者是一樣的。

sbitsw=p0^0;

sbitOE=P0^6;

sbitLE=P0^7;//74LS373鎖存器控制端定義

chardisplay[]={0x00,0x11,0x22,0x33,0x44,0x55,0x66,0x77,0x88,0x99};//p1口的數碼管時間顯示調用,利用74L74BCD碼,8位驅動輸出;

//函數聲明begin

voiddelay1(intcount);

voiddelay_long(intnumber1,intnumber2);

voidpeople_car_drive();

//函數聲明end

//***********************//延時子程序

voiddelay1(intcount)

{inti;

for(i=count;i>0;i--)

{;}

}

voiddelay_long(intnumber1,intnumber2)

{

inta,b;

for(a=number1;a>0;a--)

{

for(b=number2;b>0;b--)

{_nop_();}

}

}

//**********************//延時子程序

voidpeople_car_drive()

{

intp_1=2,i,j=9,p_2=6;//****************//行人通行時,延時20秒

p2=0x09;//南北紅燈亮

p3=0x24;//東西綠燈亮

while(p_1-->0)

{LE=1;

OE=0;

if(p_1==0){OE=1;}//當十位數減到0時,只顯示個位數

p1=display[p_1];

delay1(1000);

LE=0;

j=9;

for(i=10;i>0;i--)

{

if(p_1==0&&j==3)break;//減到3時退出循環,讓其黃燈閃爍顯示

p1=display[j--];

delay_long(16000,2);

if(sw==1)return;

}

}

//*******************************************************************************//

p2=0x12;//南北黃燈閃爍三秒,以提醒行人注意

p3=0x12;

p1=display[3];

delay_long(8000,1);

p2=0x00;

p3=0x00;

delay_long(14000,1);

p2=0x12;

p3=0x12;

p1=display[2];

delay_long(8000,1);

p2=0x00;

p3=0x00;

delay_long(14000,1);

p2=0x12;

p3=0x12;

p1=display[1];

delay_long(8000,1);

p2=0x00;

p3=0x00;

delay_long(14000,1);

//*****************以下是車輛通行時延時60秒//

p2=0x24;//南北綠燈亮

p3=0x09;//東西紅燈亮

while(p_2-->0)

{LE=1;

OE=0;

if(p_2==0){OE=1;}//當十位數減到0時,只顯示個位數

p1=display[p_2];

delay1(1000);

LE=0;

j=9;

for(i=10;i>0;i--)

{

if(p_2==0&&j==3)break;//減到2時退出循環

p1=display[j--];

delay_long(16000,2);

if(sw==1)return;

}

}

p2=0x12;//南北黃燈閃爍三秒,以提醒行人注意

p3=0x12;

p1=display[3];

delay_long(8000,1);

p2=0x00;

p3=0x00;

delay_long(14000,1);

p2=0x12;

p3=0x12;

p1=display[2];

delay_long(8000,1);

p2=0x00;

p3=0x00;

delay_long(14000,1);

p2=0x12;

p3=0x12;

p1=display[1];

delay_long(8000,1);

p2=0x00;

p3=0x00;

delay_long(14000,1);//南北黃燈閃爍三秒完畢

}

voidmain()//主函數入口處

{

p0=0x01;

p1=0x00;

p2=0x00;

p3=0x00;//初始化各埠

{while(1)

{

if(sw==0)

{people_car_drive();}

else

{

p2=0x00;

p3=0x00;//關閉所有交通燈

}

}

}

}

詳細資料,你可以參考這里:http://hi..com/hjiannew/blog/item/b1b17a40f0b52a1a9313c6bb.html

另外硬體,軟體你有不懂的,你可以加我QQ:314955772,我在線指導你。

④ 編程里有個製作汽車紅燈停綠燈行的怎麼弄

交通紅綠燈plc編程實例_交通紅綠燈控制。
控制要求:
1、確定設計任務書; 本設計主要實現對十字路口的東西向和南北向的紅綠燈的有序控制。

2、確定外圍I/O設備。
3、選定PLC型號。
I/O地址表
編制PLC的I/O地址表,如表10-1所示。
表10-1 ------------------I/O地址表
編號
地址
說明
功能
6路數字輸出
1
Q0.0
綠燈
控制東西方向綠燈
2
Q0.1
黃燈
控制東西方向黃燈
3
Q0.2
紅燈
控制東西方向紅燈
4
Q0.3
綠燈
控制南北方向綠燈
5
Q0.4
黃燈
控制南北方向黃燈
6
Q0.5
紅燈
控制南北方向紅燈
1路數字輸入
1
10.0
開關
電源開關
紅綠燈控制圖
1、硬體圖 ---硬體圖如圖10-1

流程圖10-3

交通燈的PLC接線圖10-2

交通燈的邏輯控制圖10-4

交通燈時序圖10-5

紅綠燈控制plc編程
1、新建工程
單擊"New"新建工程,輸入工程名:紅綠燈控制。

2、編寫程序
當按下「啟動」鍵,則系統開始計時,以一時間段的時間為周期,循環。在不同的時間范圍內,開啟不同的燈,周而復始。

程序如表10-2所示。 表10-2 交通燈控製程序表

Network1
按開啟,開始計時,設定基時,即秒的時間。

Network2
基時復位。

Network3
時間周期的設定,電源關則計數器復位。

Network4
周期復位。

Network5
設定開Q0.0的時間段。

Network6
設定開Q0.1 的時間段。

Network7
設定開Q0.2 的時間段。

Network8
設定開Q0.3 的時間段。

Network9
設定開Q0.4 的時間段。

Network10
設定開Q0.5 的時間段。

⑤ PLC怎麼實現程序循環(交通燈)

PLC實現程序循環(交通燈)方法
交通信號燈分東、西、南、北四組,每組分別有「紅」「黃」「綠」三種顏色。

其工作狀態由PLC過程式控制制,「啟動」、「停止」按鈕分別控制信號燈的啟動和停止。
G1表示東西綠燈的信號,Y1表示東西黃燈的信號,R1表示東西紅燈的信號;
G2表示南北綠燈的信號,Y2表示南北黃燈的信號,R3表示南北紅燈的信號;

SB2表示「停止」信號,SB1表示「啟動」信號。
1.按下啟動按鈕,東西綠燈亮,南北紅燈亮; 30秒後,熄滅。
2.東西,南北四個黃燈同時閃爍5次(5秒)後,熄滅。
3.東西紅燈亮,南北綠燈亮20秒。
4.東西,南北四個黃燈同時閃爍5次(5秒)後,熄滅。按如下波形圖,連續循環。
5.按下停止按鈕,所有指示燈全部熄滅。
6.選定PLC的機型是S7-200系列PLC。確定I/O點,繪制I/O點分配表,編程。
7.編程後,認真檢查PLC的梯形圖程序。

閱讀全文

與交通燈電路編程教程相關的資料

熱點內容
高三倒計時緩解壓力 瀏覽:617
一捏就變形的解壓玩具怎麼折 瀏覽:196
易融貸app借錢怎麼 瀏覽:939
單片機側重點 瀏覽:867
江蘇惠普伺服器虛擬化設計雲主機 瀏覽:647
在歐拉app好貓充電樁怎麼申請 瀏覽:449
反編譯代碼教程 瀏覽:798
linuxio阻塞 瀏覽:973
8腳單片機pic 瀏覽:821
如何看彩色塗鴉遮住的字安卓 瀏覽:688
擺渡機器人編程 瀏覽:654
軟程序員著裝 瀏覽:139
寶雞雲存儲伺服器 瀏覽:668
推薦超解壓游戲無廣告 瀏覽:634
大華伺服器怎麼添加門禁 瀏覽:784
戰地伺服器60hz什麼意思 瀏覽:760
成高級程序員學什麼 瀏覽:501
阿里雲接入備案後退掉伺服器 瀏覽:928
ne40e命令 瀏覽:85
安卓輸入法使用什麼編碼 瀏覽:184