地感式车辆检测器及功能扩展

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

JN车辆检测及功能扩展

一、系统组成

MCS—51是功能很强的8位高档单片机,由于它自身的特点,很适合用于测控及逻辑控制,JN车辆检测器是以AT89C51单片机为中心配以相关的功能电路组成。见框图1。

1

CPU对车辆途经地感线圈C1、C2所产生的电感变化与基准频率fo进行比较运算,当变化频率大于或等于某一差值时,CPU输出控制信号。

二、工作原理与程序

由电感器件B1、BG1、C1、C2、R1等组成低频振荡电路,外接地感线圈C1就构成了车辆感应电路,见图1。当加电瞬间电流经R2向C1、L2充电,a点为高

电位,

由于C2作用使BG1基极电位上升,集电极电位下降,当BG1的C极电位低于a点时,电源不再向C1充电,此时B1上所聚集的磁能将以电能的形式释放出来,并改变原来充电电流的方向继续向C1充电,BG1的b极仍然保持较高的电位,集电极c 电位继续下降,当B1释放完毕后,BG1的b极失去高电位的支撑,集电极电位开始回升,当回升高于a点电位后又开始向C1充电,周而复始。

改变选频电路C1、L2的值可改变其电路的振荡频率,经实验在不加地感线圈C1时振荡频率应控制在16—20KHz,加C1后频率应提升到40—50KHz。当车辆途经地感线圈瞬间时使C1的电感增大,这等效于B1的初级线圈L1部分线匝短路,使得B1的电感降低,振荡频率从原fo上升至f i 。频差等于fi—fo,从频率变化上就能反映出车辆是否通过C1。不同类型的车辆由于底盘距地面的高度不同,所以频差也不尽相同,在CPU处理过程中我们可以设定不同的阀值用于分类不同的车辆。

Uo经C3由4069与非门整形后送入A T89C51外部P3.4、P3.5进行计数。整图见图2

CPU检测控制流程框图见图2。初始化后基本上是以判断为主的顺序结构,在编程时将检测C1、C2线圈的语句定为子程序以便反复调用, 汇编程序全文如下:

ORG 0000H

LJMP START

ORG 000BH

LJMP TF0INT

ORG 001BH

LJMP TF1INT

ORG 0100H

START: MOV SP,#60H ;6M 12sM 实验,减P2差值,置快门后回AAA0 MOV PSW,#00H ;绿灯循环检测到最小值。

START1: JB P1.0,START2

SETB P1.6 ;若红灯则置相机聚焦.

SJMP START3

START2: CLR P1.6

START3: CLR A

MOV R0,A

MOV R1,A

MOV R2,A

MOV R3,A

MOV R4,A

MOV R5,A

MOV R6,A

MOV R7,A

MOV 30H,A

MOV 31H,A

MOV 32H,A

MOV 33H,A

MOV P1,#01H

MOV P2,#0FFH

C1ACALL: ACALL ALCTF1 ;调用C1检测子程序,取最小C1基值

MOV 30H,TL0

MOV 31H,TH0

C2ACALL: ACALL ALCTF0 ;调用C2检测子程序,取最小C2基值

MOV 32H,TL1

MOV 33H,TH1

C1ACALL1: CLR P1.6

JNB P1.0, AAAA

ACALL ALCTF1

MOV A, TH0

CJNE A, 31H, C1ACA

MOV A, TL0

CJNE A, 30H, C1ACA

SJMP C2ACALL1

C1ACA: JNC C1ACA1

MOV 30H, TL0

SJMP C2ACALL1

C1ACA1: SETB P1.2

C2ACALL1: ACALL ALCTF0

MOV A, TH1

CJNE A, 33H, C2ACA

MOV A, TL1

CJNE A, 32H, C2ACA

SJMP C1ACALL1

C2ACA: JNC C2ACA1

MOV 32H, TL1

MOV 33H, TH1

SJMP C1ACALL1

C2ACA1: SETB P1.3

AAAA: JB P1.0, C1ACALL1

INC 30H ;加1去除误差

INC 32H

AAA0: JB P1.0, START1 ;若绿灯则回重检C1 C2基值程序. CLR P1.2

CLR P1.3

SETB P1.6

C1_CHER: ACALL ALCTF1 ;检测C1并进行比较.

MOV A, TH0

CJNE A, 31H, C1_CHE1

MOV A, TL0

CJNE A, 30H, C1_CHE

SJMP AAA0

C1_CHE: JC AAA0

MOV B,P2

CLR C

SUBB A, 30H

CJNE A, B, C1_CHE1

SETB P1.2

SJMP C1_CHE2

C1_CHE1: JC AAA0

MOV A, #0FFH

CLR C

SUBB A, 30H

ADD A, TL0

MOV B,P2

CJNE A,B,C1_CHE6

SETB P1.2

SJMP C1_CHE2

C1_CHE6: JC AAA0

相关文档
最新文档