[go: up one dir, main page]

CN109799845A - 一种基于can总线的液位控制装置的设计 - Google Patents

一种基于can总线的液位控制装置的设计 Download PDF

Info

Publication number
CN109799845A
CN109799845A CN201711139930.5A CN201711139930A CN109799845A CN 109799845 A CN109799845 A CN 109799845A CN 201711139930 A CN201711139930 A CN 201711139930A CN 109799845 A CN109799845 A CN 109799845A
Authority
CN
China
Prior art keywords
fluid level
bus
control device
design
bus based
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201711139930.5A
Other languages
English (en)
Inventor
不公告发明人
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Changsha Min Lake Electronic Technology Co Ltd
Original Assignee
Changsha Min Lake Electronic Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Changsha Min Lake Electronic Technology Co Ltd filed Critical Changsha Min Lake Electronic Technology Co Ltd
Priority to CN201711139930.5A priority Critical patent/CN109799845A/zh
Publication of CN109799845A publication Critical patent/CN109799845A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Arrangements For Transmission Of Measured Signals (AREA)

Abstract

本发明涉及一种基于CAN总线的液位控制装置的设计,本发明基于CAN总线的液位控制,实现通过CAN总线接收控制指令及上传数据、并根据指令进行液位的控制。本发明由液位变送器产生一个输入信号给AD转换器ADC0804进行信号转换送入CPU,进行数据处理,然后经由CAN总线控制后由CPU输出信号给DA转换器DAC0832,然后输出信号作用于控制阀门,直接作用于容器装置,形成一个完整的循环控制系统。

Description

一种基于CAN总线的液位控制装置的设计
技术领域
本发明专利涉及电子设计技术领域,尤其涉及一种基于CAN总线的液位控制装置的设计。
背景技术
在工业生产过程中,液位往往是很重要的控制参数,常常需要测量容器中液体的液位。液位测量的目的主要是通过液位测量来确定容器里的原料、半成品或产品的数量,以保证生产过程各环节物料平衡以及为进行经济核算提供可靠的依据。随着各行业的快速发展,液位测量已应用到越来越多的领域,传统的液位测量手段已经无法满足对其精确性的要求,所以基于CAN总线的液位控制,这种智能化控制方向已经成为一种新的手段被广泛的应用。
发明专利内容
本发明专利涉及一种基于CAN总线的液位控制装置的设计,本发明基于CAN总线的液位控制,实现通过CAN总线接收控制指令及上传数据、并根据指令进行液位的控制。
本发明由液位变送器产生一个输入信号给AD转换器ADC0804进行信号转换送入CPU,进行数据处理,然后经由CAN总线控制后由CPU输出信号给DA转换器DAC0832,然后输出信号作用于控制阀门,直接作用于容器装置,形成一个完整的循环控制系统。
附图说明
图1:系统总体结构框图。
图2:AT89C51电路图。
图3:ADC0804电路图。
图4:CAN总线控制器MCP2510图。
图5:CAN收发器PCA82C250图。
图6:TLP113光耦合器图。
图7:系统流程图。
具体实施方式
为了使本发明专利的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明专利进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明专利,并不用于限定本发明专利。
本发明专利涉及一种基于CAN总线的液位控制装置的设计,本发明是基于CAN总线的液位控制,实现通过CAN总线接收控制指令及上传数据、并根据指令进行液位的控制。
进一步的,本发明首先由液位变送器产生一个输入信号给AD转换器ADC0804进行信号转换送入CPU,进行数据处理,然后经由CAN总线控制后由CPU输出信号给DA转换器DAC0832,然后输出信号作用于控制阀门,直接作用于容器装置,形成一个完整的循环控制系统。系统总体结构框图如图1所示。
进一步的,本发明选用AT89C51可满足控制要求,如图2所示。
进一步的,本发明选用CYB31型液位变送器来进行液位的测量。
进一步的,本发明中采集模拟信号是使用的转换器是ADC0804,如图3所示,它是典型的八位逐次逼近型AD转换器。最多可以允许8位模拟量的输入,借助三位的地址锁存器与译码电路,多路模拟开关可以选择此八路模拟量中的一个,所有的模拟量转换共用一个AD转换器。
进一步的,本发明来自于CAN总线上的信号经过单片机变成数字信号。输出的数字信号只有经过DA转换才能实现模拟量的输出。本发明采用DAC0832,DAC0832是一种常用的8位数字模拟转换芯片。DAC0832最具有特色是输入为双缓冲结构,数字信号在进入DA转换前,需经过两个独立控制的8位锁存器传送。其优点是DA转换的同时,DAC寄存器中保留现有的数据,而在输入寄存器中可送入新的数据。系统中多个DA转换器内容可用一公共的选通信号选通输出。
进一步的,本发明中CAN总线控制器芯片采用MCP2510, MCP2510是Microchip公司推出的采用独立CAN控制器的CAN总线控制器芯片,它完全符合CAN总线的2.0B技术规范,并带有符合工业标准的SPI串行接口。MCP2510在目前市场上是体积最小、最易于使用也是最节约成本的独立CAN控制器。MCP2510是一种带有SPI接口的 CAN控制器,它支持 CAN技术规范 V2.0AB;并能够发送的接收标准的和扩展的信息帧,同时具有接收滤波和信息管理的功能。MCP2510通过SI接口与MCU进行数据传输,最高数据传输速率可达5Mbs,MCU可通过MCP2510与CAN总线上的其它MCU单元通讯。MCP2510内含三个发送缓冲器、二个接收缓冲器。同时还具有灵活的中断管理能力,这些特点使得MCU对CAN总线的操作变得非常简便,如图4所示。
进一步的,CAN收发器是一个物理层的器件,它是CAN总线控制器和物理总线之间的接口,器件可以提供对总线的差动发送能力和差动接收能力。本设计总线收发器选用PCA82c250,其与ISODIS 11891标准完全兼容,最高速可达1Mbps,很强的抗瞬间干扰和保护总线的能力,降低射频干扰(RFI--Radio Frequency Interference)的斜率控制,热防护,可防护电池与地之间发生短路,存在低电流备用模式,并且某一个节点掉电不会影响总线,如图5所示。
进一步的,本发明选择TLP113光耦合器。TOSHIBA小型扁平耦合器TLP113(P113)是一个小外型耦合器,适用于贴片安装。TLP113(P113)包含一个高输出功率的砷化镓铝发光二极管,该二极管光耦合到一个高增益,高速单片光探测器。探测器的输出为肖特基钳位晶体管,集电极开路输出,如图6所示。
进一步的,本发明的软件流程图如图7所示。系统控制程序如下:
#include
#include "CANCOM.(void)
{
EA = 0;
System_init(); 系统初始化
Timer_init(); 定时器初始化
Interrupt_init(); 中断
UART_ini();
CAN_init();
Delay(1);
W_WDT();
EA = 1;
Delay(1);
UART_Length = 8;
CAN_Transmit(0); UART_Transmit();
void Interrupt_init(void)
{
IP = 0x00;
IT0 = 0x01; 外部0中断沿触发
ET0 = 1; 定时器0中断使能
EX0 = 1; 外部中断使能
ES = 1; 串行中断使能
}
void Timer_init(void)
{
TMOD |= 0x01; 使用定时器0-方式1
TH0 = temp_TH0;
TL0 = temp_TL0;
TR0 = 1; 这里不打开定时器
}
void CAN_init(void)
{
EA = 0;
MOD_CAN1 |= 0x08; 单滤波方式
do
{
MOD_CAN1 |= 0x01; request to reset mode
}
while ((MOD_CAN1&0x01) != 0x01);
CDR_CAN1 = 0xc8;选择PeliCAN模式,使用输入比较器,clk_out关闭
IER_CAN1 = 0x01;允许发送中断,其他中断禁能
ACR0_CAN1 = ACR_ID[0];
ACR1_CAN1 = ACR_ID[1];
ACR2_CAN1 = ACR_ID[2];
ACR3_CAN1 = ACR_ID[3];
AMR0_CAN1 = AMR_ID[0];
AMR1_CAN1 = AMR_ID[1];
AMR2_CAN1 = AMR_ID[2];
AMR3_CAN1 = AMR_ID[3];
ECC_CAN1 = 0;
TXERR_CAN1 = 0;
RBSA_CAN1 = 0;
BTR0_CAN1 = CAN_BTR0[0];
BTR1_CAN1 = CAN_BTR1[0];
OCR_CAN1 = 0xaa; normal output
W_WDT();
do
{
MOD_CAN1 &= 0xfe;
}
while ((MOD_CAN1&0x01) != 0x00);
EA = 1;
}
while ((can_status&0x04) != 0x04);
TXFrameInfo1 = 0x80 + UART_Length%8;
pointer = &TXID1;
for (i=0;i<4;i++)
{
*(pointer++) = CAN_TX_ID[i];
}
pointer = &TXDATA1;
for (i=0;i<(UART_Length%8);i++)
{
*(pointer++) = CAN_TX_Data[i+8*(UART_Length8)];
}
CMR_CAN1 = Request_TX;
W_WDT();
CAN接收中断服务程序
void CAN_ISR(void) interrupt 0 using 1
{
unsigned char can_int;
EA = 0;
can_int = IR_CAN1;
if ((can_int&0x01) == 0x01) 接收中断
{
CAN_Receive();
CMR_CAN1 |= ReleaseRXBuf;
}
else
{
CAN_ERROR_flag = YES; 其他中断,暂时未用
}
UART_flag = YES;
CAN_flag = YES;
UART_Transmit();
EA = 1;
CAN接收数据函数
#define YES 1
4800bps 5bits 1.04mS
#define TIME_MS 1
#define temp_TH0 (0 - 922*TIME_MS)256
#define temp_TL0 (0 - 922*TIME_MS)%256
sbit LED1 = P1^2;
sbit LED2 = P1^3;
sbit LED3 = P1^5;
sbit LED4 = P1^4;
sbit WDT = P3^4;
void System_init(void);
void Delay(unsigned char time);
void W_WDT(void);
void Interrupt_init(void);
void CAN_init(void);
void CAN_Transmit(unsigned char Farmeinfo);
void CAN_Transmit(bit FarmeType);
void CAN_Receive(void);
void Timer_init(void);
void UART_ini(void);
void UART_Send_Byte(unsigned char Data);
void UART_Transmit(void);
void Clear_Buffer(unsigned char *pointer,unsigned char length);
#endif。
以上所述仅为本发明专利的较佳实施例而已,并不用以限制本发明专利,凡在本发明专利的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明专利的保护范围之内。

Claims (7)

1.本发明专利涉及一种基于CAN总线的液位控制装置的设计,本发明是基于CAN总线的液位控制,实现通过CAN总线接收控制指令及上传数据、并根据指令进行液位的控制。
2.根据权利要求1所述的一种基于CAN总线的液位控制装置的设计,其特征在于,本发明由液位变送器产生一个输入信号给AD转换器ADC0804进行信号转换送入CPU,进行数据处理,然后经由CAN总线控制后由CPU输出信号给DA转换器DAC0832,然后输出信号作用于控制阀门,直接作用于容器装置,形成一个完整的循环控制系统。
3.根据权利要求1所述的一种基于CAN总线的液位控制装置的设计,其特征在于,本发明选用AT89C51单片机。
4.根据权利要求1所述的一种基于CAN总线的液位控制装置的设计,其特征在于,本发明选用CYB31型液位变送器来进行液位的测量。
5.根据权利要求1所述的一种基于CAN总线的液位控制装置的设计,其特征在于,本发明中采集模拟信号使用的转换器是ADC0804。
6.根据权利要求1所述的一种基于CAN总线的液位控制装置的设计,其特征在于,本发明中CAN总线控制器芯片采用MCP2510。
7.根据权利要求1所述的一种基于CAN总线的液位控制装置的设计,其特征在于,本发明选择TLP113光耦合器。
CN201711139930.5A 2017-11-16 2017-11-16 一种基于can总线的液位控制装置的设计 Pending CN109799845A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711139930.5A CN109799845A (zh) 2017-11-16 2017-11-16 一种基于can总线的液位控制装置的设计

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711139930.5A CN109799845A (zh) 2017-11-16 2017-11-16 一种基于can总线的液位控制装置的设计

Publications (1)

Publication Number Publication Date
CN109799845A true CN109799845A (zh) 2019-05-24

Family

ID=66555707

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711139930.5A Pending CN109799845A (zh) 2017-11-16 2017-11-16 一种基于can总线的液位控制装置的设计

Country Status (1)

Country Link
CN (1) CN109799845A (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN2786671Y (zh) * 2005-01-10 2006-06-07 北京工业大学 基于can总线的分布式潜水电机监控系统
US20090292572A1 (en) * 2008-05-23 2009-11-26 Kevin Charles Alden Concrete Material Dispensing System
CN102323831A (zh) * 2011-08-04 2012-01-18 江南机器(集团)有限公司 液化天然气储罐液位控制器
CN103076819A (zh) * 2011-10-25 2013-05-01 上海华建电力设备股份有限公司 一种液位控制装置及数据处理
CN103105860A (zh) * 2011-11-14 2013-05-15 陈凯 计算机液位控制系统及其控制方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN2786671Y (zh) * 2005-01-10 2006-06-07 北京工业大学 基于can总线的分布式潜水电机监控系统
US20090292572A1 (en) * 2008-05-23 2009-11-26 Kevin Charles Alden Concrete Material Dispensing System
CN102323831A (zh) * 2011-08-04 2012-01-18 江南机器(集团)有限公司 液化天然气储罐液位控制器
CN103076819A (zh) * 2011-10-25 2013-05-01 上海华建电力设备股份有限公司 一种液位控制装置及数据处理
CN103105860A (zh) * 2011-11-14 2013-05-15 陈凯 计算机液位控制系统及其控制方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
胡敦利等: "基于C8051F040和CAN总线的液位控制器设计", 《仪表技术与传感器》 *

Similar Documents

Publication Publication Date Title
Chen et al. Distributed intelligent city street lamp monitoring and control system based on wireless communication chip nRF401
CN104468035B (zh) 一种分布式pos数据可靠性传输系统及方法
CN106960558A (zh) 一种融合多种通信方式的装置
CN103870421A (zh) 一种基于fpga的串行接口和pwm组合应用ip核
CN105137864A (zh) 空间飞行器下位机协控制SoC芯片
CN109799845A (zh) 一种基于can总线的液位控制装置的设计
CN205883718U (zh) 一种mipi应用高速电路板
CN110472269A (zh) 一种适用于lbe总线的扩展外部接口设计方法及设备
CN104050121A (zh) 双收双发可编程arinc429通讯接口芯片
CN103926861B (zh) 一种航空弹药通用测试设备智能接口适配器
CN207302324U (zh) 一种基于宽带载波的电力数据采集系统
CN201796084U (zh) 无线电量传感器
CN207457341U (zh) 三相四线rf智能电表
CN207097226U (zh) 一种智能抄表系统波特率控制电路
CN203982579U (zh) 一种电力远程抄表系统的信号转换设备
CN207650989U (zh) 一种智能仪表数据采集架构
CN201966900U (zh) 基带片上系统芯片和对讲机
CN207965551U (zh) 一种基于LoRa通讯铁路上水远程监控系统
CN109088620A (zh) 一种基于数据控制的pfm调制电路
CN206312355U (zh) 一种远距离无线传输设备
CN205407785U (zh) 用于计量仪表的多回路模拟量同步采样电路
CN207588853U (zh) 一种应用于数传电台的终端处理器
Parvathala et al. Arm based wireless energy meter reading system along with power on/off circuit
CN219978856U (zh) 一种基于risc-v的芯片及包含该芯片的口袋实验室
CN208076966U (zh) 一种应用于计算机网络工程施工的数据采集系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20190524