1. 首页 > 电脑手机 >

交通灯控制程序设计 交通灯控制程序设计流程图

要求:

交通灯控制程序设计 交通灯控制程序设计流程图交通灯控制程序设计 交通灯控制程序设计流程图


1、设计一个十字路口的交通灯控制电路,要求东西方向车道和南北方向车道两条交叉道路上的车辆交替运行,每次通行时间都设为45秒。时间可设置修改。

2、在绿灯转为红灯时,要求黄灯先亮5秒钟,才能变换运行车道;

3、黄灯亮时,要求每秒闪亮一次。

4、东西方向、南北方向车道除了有红、黄、绿灯指示外,每一种灯亮的时间都用显示器进行显示(采用倒计时的方法)。

5、同步设置人行横道红、绿灯指示。

交通灯好简单啊 我不是自动化专业的都会

可惜找不到PLC方面的工作

TITLE=程序注释

Network 1 // 网络标题

// 网络注释

LD SM0.1

S M0.0, 1

Network 2

LD M0.0

A I0.0

S M0.1, 1

R M0.0, 1

Network 3

LD M0.6

A T43

S M0.1, 1

R M0.6, 1

Network 4

LD M0.1

A T38

S M0.2, 1

R M0.1, 1

Network 5

LD M0.2

A T39

S M0.3, 1

R M0.2, 1

Network 6

LD M0.3

A T40

S M0.4, 1

R M0.3, 1

Network 7

LD M0.4

A T41

S M0.5, 1

R M0.4, 1

Network 8

LD M0.5

A T42

S M0.6, 1

R M0.5, 1

Network 9

LD M0.6

A T43

S M0.0, 1

R M0.6, 1

Network 10

LD M0.1

O M0.2

O M0.3

= Q0.0

Network 11

LD M0.4

LDN T42

A SM0.5

A M0.5

OLD

= Q0.1

Network 12

LD M0.6

= Q0.2

Network 13

LD M0.4

O M0.5

O M0.6

= Q0.3

Network 14

LD M0.1

LD SM0.5

AN T39

A M0.2

OLD

= Q0.4

Network 15

LD M0.3

= Q0.5

Network 16

LD M0.1

TON T38, 200

Network 17

LD M0.2

TON T39, 30

Network 18

LD M0.3

TON T40, 20

Network 19

LD M0.4

TON T41, 200

Network 20

LD M0.5

TON T42, 30

Network 21

LD M0.6

TON T43, 20

晕。。又是用网络资料来解答。。。用什么PLC写的。。

摘 要:本文提出一种将模糊控制方法对单路口交通灯的实时控制系统。该系统以PLC为智能交通控制器的核心,系统编程简单、灵活,具有较高的可靠性。应用实践表明,本系统设计的模糊控制器能有效地减少单交叉口平均车辆延误,从而为实现交通系统智能控制提供了一条新途径。

关键词:PLC; 模糊控制; 车辆平均延误

Abstract: This paper proposes a real-time system to fuzzy control the traffic signal in isolated intersection. This system which sets PLC as the core of intellectual traffic controller is easy, flexible to prog

详细内容请查看以下链接。

毕业论文 题目:交通灯控制系统设计

交通灯智能控制系统设计1.概述

当前,在世界范围内,一个以微电子技术,计算机和通信技术为先导的,以信息技术和信息产业为中心的信息革命方兴未艾。而计算机技术怎样与实际应用更有效的结合并有效的发挥其作用是科学界最热门的话题,也是当今计算机应用中空前活跃的领域。本文主要从单片机的应用上来实现十字路口交通灯智能化的管理,用以控制过往车辆的正常运作。

2.过程分析

图1是一个十字路口示意图。分别用1、2、3、4表明四个流向的主车道,用A、B、C、P分别表示各主车道的左行车道、直行车道、右行车道以及人行道。用a、b、c、p分别表示左转、直行、右转和人行道的交通信号灯,如图2所示。

交通灯闪亮的过程:

路口1的车直行时的所有指示灯情况为:

3a3b2p绿3c红+4a4b4c 3p全红+1c 绿1a1b4p红+2c绿2a2b1p红

路口2的车直行时的所有指示灯情况为:

4a4b3p绿4c红+ 1a1b1c 4p全红+ 2c绿2a2b1p红+3c绿3a3b2p红

故路口3的车直行时的所有指示灯情况为:

1a1b4p绿1c红+ 2a2b2c 1p全红+3c绿 3a3b2p红+4c 绿4a4b3p红

故路口4的车直行时的所有指示灯情况为:

2a2b1p绿2c红+3c3a3b2p全红+4c绿4a4b3p红+1c绿1a1b4p红

图1:十字路口交通示意图 图2:十字路口通行顺序示意图 图3:十字路口交通指示灯示意图 图4:交通灯控制系统硬件框图 3、硬件设计

本系统硬件上采用AT89C52单片机和可编程并行接口芯片8155,分别控制图2所示的四个组合。AT89C52单片机具有MCS-51内核,片内有8KB Flash、256字节RAM、6个中断源、1个串行口、最高工作频率可达24MHz,完全可以满足本系统的需要 ;与其他控制方法相比,所用器件可以说是比较简单经济的。硬件框图如下: 电路原理图 [PDF]4、软件流程图 图5:交通灯控制系统流程图 5、交通灯控制系统软件

ORG 0000H

LJMP MAIN

ORG 0100H

MAIN:

MOV SP,#60H

; LCALL DIR ;调用日期、时间显示子程序

LOOP:

MOV P1,#0FFH

LJMP TEST

LCALL ROAD1 ;路口1的车直行时各路口灯亮情况

LCALL DLY30s ;延时30秒

MOV P1,#0FFH ;恢复P1口高电平

LCALL RESET ;恢复8155各口为高电平

LCALL YELLOW1 ;路口1的车直行-->路口2的车直行黄灯亮情况

LCALL DLY5s ;延时5秒

LCALL RESET ;恢复8155各口为高电平

MOV P1,#0FFH ;恢复P1口

LCALL ROAD2 ;路口2的车直行时各路口灯亮情况

LCALL DLY30s ;延时30秒

LCALL RESET ;恢复8155A 、B口为高电?

MOV P1,#0FFH ;恢复P1口高电平

LCALL YELLOW2 ;路口2的车直行-->路口3的车直行黄灯亮情况

LCALL DLY5s ;延时5秒

LCALL RESET ;恢复8155A 、B口为高电?

MOV P1,#0FFH ;恢复P1口高电平

LCALL ROAD3 ;路口3的车直行时各路口灯亮情况

LCALL DLY30s ;延时30秒

LCALL RESET ;恢复8155A 、B口为高电?

MOV P1,#0FFH ;恢复P1口高电平

LCALL YELLOW3 ;路口3的车直行-->路口4的车直行黄灯亮情况

LCALL DLY5s ;延时5秒

LCALL RESET ;恢复8155各口为高电平

MOV P1,#0FFH ;恢复P1口高电平

LJMP TEST

LCALL ROAD4 ;路口4的车直行时各路口灯亮情况

LCALL DLY30s ;延时30秒

SETB P1.5 ;恢复P1.5高电平

SETB P1.4 ;恢复P1.4高电平

MOV DPTR,#0FFFFH ;恢复8155各口为高电平

LCALL YELLOW4 ;路口4的车直行-->路口1的车直行黄灯亮情况

LCALL DLY5s ;延时5秒

SETB P1.6 ;恢复P1.6高电平

SETB P1.3 ;恢复P1.3高电平

MOV DPTR,#0FFFFH ;恢复8155各口为高电平

LJMP LOOP

;路口1的车直行时各路口灯亮情况3a3b2p绿3c红+4a4b4c3p全红+1c绿1a1b4p红+2c绿2a2b1p红

ROAD1:

MOV DPTR,#7F00H ;置8155命令口地址;无关位为1)

MOV A,#03H ;A口、B口输出,A口、B口为基本输入输出方式

MOVX @DPTR,A ;写入工作方式控制字

INC DPTR ;指向A口

MOV A,#79H ;1a1b4p红1c绿2a2b1p红

MOVX @DPTR,A

INC DPTR ;指向B口

MOV A,#0E6H ;3a3b2p绿3c红4a4b3p红

MOVX @DPTR,A

MOV P1,#0DEH ;4c红2c绿

RET 6、结语

本系统结构简单,操作方便;可现自动控制,具有一定的智能性;对优化城市交通具有一定的意义。

本设计将各任务进行细分包装,使各任务保持相对独立;能有效改善程序结构,便于模块化处理,使程序的可读性、可维护性和可移植性都得到进一步的提高。

6、参考资料

[1]韩太林,李红,于林韬;单片机原理及应用(第3版)。电子工业出版社,2005

[2]刘乐善,欧阳星明,刘学清;微型计算机接口技术及应用。华中理工大学出版社,2003

[3]胡汉才;单片机原理及其接口技术。清华大学出版社,2000 返回首页关闭本窗口

#include

#define uint unsigned int

#define uchar unsigned char

sbit EW_led_green =P1^0;

sbit EW_led_yellow =P1^1;

sbit EW_led_red =P1^2;

sbit NS_led_green =P1^3;

sbit NS_led_yellow =P1^4;

sbit NS_led_red =P1^5;

sbit wela1 =P0^7;

sbit wela2 =P0^6;

sbit wela3 =P0^5;

sbit wela4 =P0^4;

uchar count=0;

uchar count1=0;

uchar Y;

uchar num;

uchar num2=0;

uchar r=15;

uchar l=10;

uchar a=4;

uchar flag=0;

uchar temp=0;

uchar times;

uchar timet;

uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

void delayms(uint z)//毫秒延时

{uint x,y;

for(x=z;x>0;x--)

for(y=110;y>0;y--);

}void init()

{TMOD =0x11;//定时器0,1方式1

TH0 =(65536-45872)/256; //初值50ms

TL0 =(65536-45872)%256;

TH1 =(65536-45872)/256; //初值50ms

TL1 =(65536-45872)%256;

EA =1;

ET0 =1;

ET1 =1;

EX0 =1;//外部中断0

IT0 =1;//外部中断0下降沿触发

TR0 =0;

TR1 =0;

}void EW_display(uchar x)//东西数码管显示函数

{uchar s,g;

s=x/10;

g=x%10;

wela3=0;

wela4=1;

wela1=1;

wela2=1;

P2=table[s];

delayms(5);

wela4=0;

wela3=1;

wela1=1;

wela2=1;

P2=table[g];

delayms(5);

}void NS_display(uchar x)//南北数码管显示函数

{uchar s,g;

s=x/10;

g=x%10;

wela1=0;

wela2=1;

wela3=1;

wela4=1;

P2=table[s];

delayms(5);

wela2=0;

wela1=1;

wela3=1;

wela4=1;

P2=table[g];

delayms(5);

}void led_off()

{NS_led_red =1;

NS_led_yellow =1;

NS_led_green =1;

EW_led_red =1;

EW_led_yellow =1;

EW_led_green =1;

}void led_on()

{NS_led_red =0;

NS_led_yellow =0;

NS_led_green =0;

EW_led_red =0;

EW_led_yellow =0;

EW_led_green =0;

}void led_sw()

{// while(num2)

// {

num=r;

delayms(10);

while(num)

{//东西方外部中断处理函数

while(temp)

{if(temp==1)

{TR0 =0;

TR1 =0;

times =num;

delayms(5);

timet =Y;

num =10;

temp =2;

}led_off();

NS_led_green =0;

EW_led_red =0;

TR0=1;

NS_display(num);

EW_display(num);

if(num==0)

{TR0=0;

num=times;

delayms(5);

temp=0;

}}

//东西方交通灯处理函数

Y=a;

flag=0;

TR0=1;

NS_led_yellow =1;

NS_led_green =1;

EW_led_red =1;

EW_led_yellow =1;

EW_led_green=0;

NS_led_red=0;

EW_display(num-Y);

NS_display(num);

if((num-Y)==0)

{TR1=1;

while(Y)

{//东西方外部中断处理函数

while(temp)

{if(temp==1)

{TR0 =0;

TR1 =0;

times =num;

delayms(5);

timet =Y;

num =10;

temp =2;

}led_off();

NS_led_green =0;

EW_led_red =0;

TR0=1;

NS_display(num);

EW_display(num);

if(num==0)

{TR0=0;

led_off();

NS_led_red=0;

Y=timet;

TR1=1;

temp=0;

}}

//东西方交通灯处理函数

EW_led_green=1;

EW_display(Y);

NS_display(Y);

}}

}if(num==0)

num=l;

delayms(10);

while(num)

{//南北方外部中断处理函数

while(temp)

{if(temp==1)

{TR0 =0;

TR1 =0;

times =num;

delayms(5);

timet =Y;

num =10;

temp =2;

}led_off();

NS_led_red =0;

EW_led_green =0;

TR0=1;

NS_display(num);

EW_display(num);

if(num==0)

{TR0=0;

num=times;

delayms(5);

temp=0;

}}

//南北方交通灯处理函数

Y=a;

flag=1;

TR0=1;

NS_led_yellow =1;

NS_led_red =1;

EW_led_yellow =1;

EW_led_green =1;

EW_led_red=0;

NS_led_green=0;

EW_display(num);

NS_display(num-Y);

if((num-Y)==0)

{TR1=1;

while(Y)

{//南北方外部中断处理函数

while(temp)

{if(temp==1)

{TR0 =0;

TR1 =0;

times =num;

delayms(5);

timet =Y;

num =10;

temp =2;

}led_off();

NS_led_red =0;

EW_led_green =0;

TR0=1;

NS_display(num);

EW_display(num);

if(num==0)

{TR0=0;

led_off();

EW_led_red=0;

Y=timet;

TR1=1;

temp=0;

}}

//南北方交通灯处理函数

NS_led_green=1;

EW_display(Y);

NS_display(Y);

}}

}// }

}

我这个是用FPGA做的,里面有注解你可以参考一下

可以看看仿真实例,试试。

十字路口交通信号灯控制程序设计

通灯显示控制

一、前言

(1)通过8255A实现十字路口交通灯的模拟控制,进一步掌握对并行口的使用.

(2)进一步学习微处理器的编程技术.

二、8255的工作原理:

8255有三种方式可以选择:

方式0:基本输入/输出方式;

方式1:带选通的输入/输出方式

方式2:双向传输方式。

8255为总线兼容型,可以与CPU的总线直接接口。其中,口地址取决于片选CS和A1、A0

如图所示,L7、L6、L5作为南北路口的交通灯与PC7、PC6、PC5相连,L2、L1、L0作为东西路口的交通灯与PC2、PC1、PC0相连。编程时六个灯按交通灯变化规律燃灭。

交通灯变化要求:

(1)、南北路口的绿灯,东西路口的红灯同时亮30秒左右;

(2)、南北路口的黄灯闪烁若干次,同时东西路口的红灯继续亮;

(3)、南北路口的红灯,东西路口的绿灯同时亮30秒左右;

(4)、南北路口的红灯继续亮,同时东西路口的黄灯闪烁若干次;

(5)、转(1)重复。

1.硬件原理图如图

2.硬件线路连接

4.流程图

按上面所述过程得出5.程序

DATA SEGMENT

PC DB ?

MESS DB 'ENTER ANY KEY CAN EXIT TO DOS!',0DH,0AH,'$'

DATA ENDS

STACK SEGMENT STACK

STA DW 200 DUP(?)

TOP EQU LENGTH STA

STACK ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK

START:

MOV AX,DATA

MOV DS,AX

MOV ES,AX

MOV AH,09H

MOV DX,OFFSET MESS

INT 21H

MOV DX,28BH

MOV AL,10000001B

OUT DX,AL

MOV DX,28AH

IN AL,DX

MOV PC,AL

MOV DX,28BH

MOV AL,10000000B

OUT DX,AL

MOV DX,28AH

MOV AL,PC

MOV DX,28AH

MOV AL,00000000B

OUT DX,AL

LLL: MOV DX,28AH

MOV AL,00100100B ;1绿2红

OUT DX,AL

CALL DONE2

CALL DONE2

MOV DX,28AH

MOV AL,01000100B ; ;1黄2红

OUT DX,AL

CALL DONE2

MOV DX,28AH

MOV AL,10000001B ;1红2绿

OUT DX,AL

CALL DONE2

CALL DONE2

MOV DX,28AH

MOV AL,10000010B ;1红2黄

OUT DX,AL

CALL DONE 2

MOV AH,06H

MOV DL,0FFH

INT 21H

JNZ PPP

JMP LLL

PPP: MOV AX,4C00H

INT 21H

DONE1 PROC NEAR

PUSH CX

MOV CX,0FFFFH

CC: LOOP CC

POP CX

RET

DONE1 ENDP

DONE2 PROC NEAR

PUSH AX

PUSH CX

MOV CX,0FFFH

UU: CALL DONE1

LOOP UU

POP CX

POP AX

RET

DONE10 ENDP

CODE ENDS

END START

有些东西发不上来 要的Q我

这JB也太吹牛比了。

课程设计还要step7程序,学校肯花20000块买软件给你们?

课程设计肯定有书的,后面有附录,可以查到相关梯形图。

你真行,这是你的功课吧,如果有报酬的话,我可以考虑帮忙作下,呵呵,不然有点费时间。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至836084111@qq.com 举报,一经查实,本站将立刻删除。

联系我们

工作日:9:30-18:30,节假日休息