车库门遥控器(拷贝型)

原创 2017年01月03日 15:15:56

最近有个项目很有意思,是把门禁遥控器(433/315MHZ)做到车载主机上,然后通过车载APP来控制门禁电机。这很符合我们的一贯思路,就是尽量使用车载多媒体设备,简化其他多余的控制器,把车机做成多媒体控制中心。


就原理来说这几乎没有什么难度,无非就是(STM32F030F4+EV1527)把遥控器做成学习型遥控器,通过串口与APP进行通信,几乎不需要编写程序之类的。

不过当我们把样品做好后发给客户验证的时候,客户反馈说:“你们为什么不做成拷贝型的遥控器,还能节省硬件成本?”。


由于一般用于学习型的门禁控制器中使用的射频发射芯片如EV1527之类的是自带20bit的固化地址,而且无法轻易重写。但是这种学习型的方式有个大毛病就是必须拆开控制盒,手动去按下那个学习键。而控制盒通常因为安全原因比较难拆开,这就导致学习新的遥控器成为大麻烦。


而拷贝型遥控器就不需要拆控制盒,因为带有感应天线,只要两个遥控器靠得足够近就能把遥控器的地址拷贝出来,这就带来了操作的便利。感应天线的工作原理暂不描述了因为我不是做硬件的,硬件是别人做好了的。


拷贝型的原理也很简单,就是电磁感应的方式把原配遥控器的20bit/16bit的地址给拷贝下来,然后固化为自己的地址,保存在STM32F030中,就是以假乱真的调包计。


硬件方面就更简单只需要STM32F030就够了,直接IO口驱动发射天线、接收天线。不过软件方面工作量就要多了,首先需要通过感应天线读取原配遥控器的地址,还要模拟发送波形,驱动发射天线。



从上面的图片中可以看出,市面上常用PIC12F系列的8PIN/14PIN芯片来做拷贝型遥控器,这确实是很便宜实用的一款芯片,可惜没有串口不符合我们的项目要求,而且只有一种工作频率,不能兼容433/315,因为这个项目会遇到以下几个问题:

1.客户可能使用固定码遥控器;

2.客户可能使用学习码遥控器;

3.客户可能使用不同发射频率,如433MHZ,315MHZ;

搭配起来,客户使用的遥控器就有4种:315MHZ固定码、315MHZ学习码、433MHZ固定码、433MHZ学习码。总不可能要求客户自己去换遥控器把,所以这就需要做成兼容型的,并在软件中判断目标遥控器是采用哪种方式了。

-----------------------------------------------------------------------------------------------------------------------------------------------

先解决问题3,为了能最大兼容可能需要的遥控器类型,我上设置了两种发射天线,315MHZ/433MHZ,单独IO口控制。并且由软件判断采用那种发射天线,这就能解决问题3。

至于问题1、问题2,就是如何识别目标遥控器的编码方式。到底是固定码(代表芯片PT2262)还是学习码(代表芯片EV1527)?这里不考虑滚动码,那太麻烦而且应用比较少。.

怎么识别芯片是固定码还是学习码呢? 首先搞清楚这两者共同点和不同点,相同点是这两种编码方式的脉宽调制方式和帧间距是一样的,都是24bit编码(3 BYTE);不同点就是怎么表示0/1的方式不一样,学习码采用一个波形表示0/1,24bit包含了地址Addr和数据Data部分分为Addr(20bit)+Data(4bit);固定码(PT2262)采用的是两个波形来表示数字0/1,24bit里面包含Addr(16bit)+Data(8bit)。

通过以上分析可以区别出来,固定码编码方式的最后一个字节就是数据内容,即遥控器按键。假如地址为Addr=0x00555500,则4个按键为:(A=0x005555C0、B=0x555530、C=0x55550C、D=0x555503)。学习码编码方式因为只有4bit数据,假如地址为Addr=0x00555550,则4个按键为(A=0x00555551、B=0x555552、C=0x555554、D=0x555558)。。。只要软件读到的编码的最后一个字节符合(C0,30,0C,03)就可以认为是固定码,否则就是学习码。

如此软件就能够很容易判断出遥控器是哪种编码方式了,后续工作当然就容易多了。

以下是通过串口打印的遥控器信息:


有了这个工具就容易多了,大大减少难度,所以后续太容易,略过。

----------------------------------------------------------

最后,附上几张所设计的样品图,免得成为白纸空谈。

图1

图2

附上拷贝遥控器的方法:

1.     首先确认目标遥控器是有效的:按几下看有没有动作;

2.     开始拷贝遥控器:点击界面的拷贝键,并按提示选择“YES”-->“OK”,选择433MHZ或者315MHZ,然后绿色灯常亮,表示可以拷贝;(图1)

3.     姿势很重要:必须采用背靠背方式,把原配遥控器紧靠拷贝型遥控盒(图2);

4.     拷贝过程:按住原配遥控器任意键3s-5s,绿色灯会持续闪烁,松开按键后绿色灯熄灭表示拷贝完成;

5.     确认效果:点击界面的开锁、关锁按键,检查是否拷贝成功,如果不成功则重复步骤2。


///////////////////////////////////////////////////

20170503

版权声明:本文为博主原创文章,未经博主允许不得转载。

Arduino - 改装车库门,增设手机蓝牙控制功能

一直有这样的想法,今天终于实现了。 功能很简单,用手机蓝牙发送信号,单片机蓝牙从机接收信号后,给继电器发送指令,控制车库门的开启与关闭。线路图如下:重点: 1、车库门控制器有手动控制接口,所以通过...
  • sdlgq
  • sdlgq
  • 2015年12月15日 09:20
  • 1893

Arduino - (增强版)改装车库门,蓝牙+自动关门

先前通过初步改装,实现了手机蓝牙控制开门关门。 这次增加了通过人体检测,没人时开始计时,超时自动关门。其他改进设想: 用433无线收发模块代替继电器,实现与车库遥控器的对接。代码如下:int ...
  • sdlgq
  • sdlgq
  • 2016年07月14日 10:20
  • 1311

超低成本的2.4G超远距离无线遥控、无线传输方案随笔

这是本人在无线领域多年的积累,希望能给将要从事无线开发的工程师或企业一些经验。...
  • fgh00000
  • fgh00000
  • 2016年05月20日 09:04
  • 11062

车库门遥控器调行程及注意事项

  • 2011年12月27日 21:06
  • 27KB
  • 下载

用Arduino远程控制车库门开关

“我用一个以太网插板负载到Arduino上。如此我便实现了打开我的车库门……就是这样! 我也安装了一个磁传感器,门是开着的或者封闭的都可以让我知道。所有都通过Telnet实现。 我修改了来自聊天服务器...
  • WIZnet2012
  • WIZnet2012
  • 2013年06月19日 16:27
  • 2032

基于读取车载RFID标签自动开关车库门c#算法实现

最近做物联网自动识别技术,遇到一个算法难题,如下发给大家分享: 1 问题描述 2.流程图稍后上, 3.编码实现 using System; using System.Collectio...
  • hefeng_aspnet
  • hefeng_aspnet
  • 2013年05月05日 11:37
  • 791

用Arduino实现车库门开关自动化

你是否也有在晚上停好车之后,忘记关闭车库门?还发生了意向不到的状况。 一位朋友为了解决这个问题,想出了妙招! 用Arduino实现你的车库 开关时间自动化!让车库门在太阳落上之后关闭,当车离开之后...
  • WIZnet2012
  • WIZnet2012
  • 2014年02月20日 11:26
  • 2032

学习型红外遥控器设计(1) 绪论

1.1  选题的目的意义 上世纪八十年代初,日本率先在电视产品中使用了红外遥控技术,使用集成发射芯片来实现遥控码的发射,如东芝TC9012,飞利浦SAA3010等,它的主要特点是:遥控器内预置固...
  • yc97463240
  • yc97463240
  • 2014年04月04日 06:26
  • 850

学习型红外遥控器设计(6) 总结展望

6.1  总结 本设计完成的万能学习型红外遥控器遵循飞利浦的RC-5协议,能够替代SAA3010遥控器使用,最终完成的功能指标如表6.1所示,技术指标如表6.2所示: 表6.1  系统功能...
  • yc97463240
  • yc97463240
  • 2014年04月05日 03:25
  • 1195

学习型红外遥控器设计(2) 红外遥控学习方案设计

2.1  设计目标及要求 本文设计的万能学习型红外遥控器要求能够实现红外编码学习和还原,其功能指标如表2.1所示: 表2.1  功能指标表   功能指标 ...
  • yc97463240
  • yc97463240
  • 2014年04月04日 06:28
  • 1595
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:车库门遥控器(拷贝型)
举报原因:
原因补充:

(最多只允许输入30个字)