0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

简易Arduino电子锁DIY图解

454398 来源:网络整理 作者:佚名 2019-11-05 10:29 次阅读

第1步:零件

首先您需要一个Arduino,我用了Diecimila,但任何类型都可以。

我使用的锁是La Gard ENV 1300型锁,我在EBay上花了10美元买了6个这样的锁。

你不能只使用任何类型的锁,像普通的门锁,它必须是电子锁。

它需要在按以下方式进行操作:在此锁内有一个锁舌,现在使锁舌保持闭合的是一个非常简单的电磁体。 通过此电磁体通电时,它可以打开锁。如果内部没有此简单的电磁体,则它将不起作用。一个简单的使用钥匙,大头针和弹子的门锁将不起作用。

我在其中包括锁内部的图片,在其中您可以看到它的工作原理电源进入电磁体,该电磁体将销子拉回并释放,释放楔子。从理论上讲,您可以创建自己的电磁锁,或者使用简单的电动机或其他工具,但这又是不同的指示。

您还需要一个基本的晶体管:从Radio shack购置的2N2222

现在,如果您想通过其他方式(而不是仅通过计算机)打开它,则是:蓝牙电话,我正在将Touch Pro与Windows Mobile一起使用

条形码扫描仪,我正在使用Symbol CS1504

在上一张图片中看到一个门把手,该门把手的底部粘有一个木制方形旋钮,以适合锁上的方形钉,用于打开锁。

步骤2:Arduino

Arduino的接线非常简单。

这只是一个非常简单的晶体管设置。来自Radio shack的2N2222

现在我用几个电阻器尝试了一下,遇到了一些问题,所以我就没有了。

请随时对此进行纠正。

晶体管已这样连接:

》来自数字端口的信号连接到晶体管的基极。

Arduino的电源通过锁回并流到晶体管的集电极

,然后它的发射极从接地端流出。 Arduino

代码非常简单,它可以从串行端口获取任何数据并将信号发送到端口,延迟然后结束信号。再次,非常简单:

/*

测试到使用串行端口打开/关闭锁

*/

int inByte = 0;

void setup()

{

//启动serial

Serial.begin(9600);

pinMode(3,OUTPUT);

}

void循环()

{

//检查是否连接

if(Serial.available()》 0)

{

inByte = Serial.read();

digitalWrite(3,HIGH);

delay(1000);

digitalWrite(3,LOW);

}

}

它看起来就像它选择的任何串行数据在该端口上打开锁的时间为1000毫秒。

非常简单

步骤3:LockApp

现在我创建了一个应用程序并将其拆分为多个部分:

按钮-按下按钮,它将数据发送到Arduino以打开《条形码-访问条形码扫描仪数据并检查特定的代码,如果看到则打开锁。蓝牙-使用WinMo手机,它通过蓝牙串行连接获取正确的数据。它会打开锁

设置-您可以在其中告诉每个设备正在使用哪些COM端口。

每个设备都以相同的方式将数据发送到Arduino,

从设置菜单中拉出COM端口,

》打开连接,

发送数据,

关闭端口

更新状态

像这样:

C#:

infoLabel1.Text =“ OPENING”;

尝试

{

SerialPort port2 =新的SerialPort(lockCom.Text,9600);

port2.Open();

port2.Write(“ open”);

port2.Close();

为(int i = 0;我《100; i ++)

{

infoLabel1.Text =“ OPEN”;

}

infoLabel1.Text =“ LOCKED”;

}

catch(System.Exception exp)

{

infoLabel1.Text =“连接问题”;

}

因此在按钮Tab上,如果您单击“打开”,请运行上面的代码。

步骤4 :条形码

现在在“条形码”选项卡上,该代码首先将条形码扫描器称为Symbol CS1504

Motorola为此模型提供了c ++ SDK,但我没有感觉像是要转换或处理它,因此我查找了已经完成的C#库,我发现:http://boss.bekk.no/display/BOSS/BarcodeLibrary

该库使用起来非常简单:

try

{

BarcodeLibrary.BarcodeFunctions条码=新的BarcodeLibrary.BarcodeFunctions(barscanCom.Text);

条码。Interrogate();

列表scandCodes =新List();

ScanningCodes =条码.GetBarcodes();

如果(scannedCodes.Count!= 0)

{

TESTCODE = ScandCodes [0] .Code;

条码.ClearBarcodes();

如果(CODE = = TESTCODE)

{

bsLabel.Text =“ ACCEPTE D“;

SerialPort端口=新的SerialPort(lockCom.Text,9600);

port.Open();

port.Write(” open“);

port.Close();

for(int i = 0;我《100; i ++)

{

infoLabel2.Text =“ OPEN”;

}

infoLabel2.Text =“ LOCKED”;

}

else

{

bsLabel.Text =“ DENIED”;

}

}

else

{

bsLabel.Text =“未检测到代码”;

}

}

catch(System.Exception exp)

{

bsLabel.Text =“条形码扫描仪问题”;

}

它调用扫描仪并检索保存在扫描仪上的JUSTTHEFIRST CODE(我懒惰地搜索它们)一旦找到它,它就会删除所有保存的代码。

然后进行比较,如果它是有效的,它将使用前面解释的代码(懒惰地使其变成函数)来打开锁。

非常容易。

步骤5:蓝牙和BlueLock

现在轮到蓝牙了,我为Windows Mobile创建了一个非常简单的程序当您点击send时,它会要求COM端口提供蓝牙并向其发送数据。

一旦您点击了名为blueLock

的此代码的send,您便会在PC上点击“扫描并打开”,它将扫描数据从设备中打开

blueLock Windows Mobile代码:

公共Form1()

{

InitializeComponent();

字符串[]端口= SerialPort.GetPortNames();

comboBox1.Items。 Add(“未选择端口”);

for(int i = 0;我 comboBox1.Items.Add(端口[i]);

comboBox2.Items.Add(“未选择端口”);

for(int i = 0; i comboBox2.Items.Add(ports [i]);

}

私有void button1_Click(对象发送方,EventArgs e)

{

SerialPort端口=新的SerialPort(comboBox1.SelectedItem。 ToString(),9600);

port.ReadTimeout = 1000;

port.Open();

port.Write(“ Test”);

port.Close();

}

lockApp的蓝牙代码:

私有无效btButton_Click(对象发送者,EventArgs e)

{

btLabel.Text =“扫描”;

尝试{

SerialPort端口=新的SerialPort (btInputCom.Text,9600);

port.Open();

蓝色= port.ReadByte();

port.Close();

如果(蓝色!= 0)

{

btLabel.Text =“成功!”;

SerialPort端口2 =新的SerialPort(lockCom.Text,9600);

port2.Open();

port2.Write(“ open”);

port2.Close();

}

else

{

btLabel.Text =“ ERROR”;

}

}

catch(System.Exception exp)

{

btLabel.Text =“条形码扫描仪问题”;

}

}

步骤6:结束

这背后的想法是简单,正如您希望的那样更好地了解Arduino,蓝牙,条形码,串行连接和硬件通信

责任编辑:wv

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 电子锁
    +关注

    关注

    3

    文章

    112

    浏览量

    23889
  • Arduino
    +关注

    关注

    184

    文章

    6428

    浏览量

    184847
收藏 人收藏

    评论

    相关推荐

    DIY简易PCL82低压电子管放大器

    电子发烧友网站提供《DIY简易PCL82低压电子管放大器.zip》资料免费下载
    发表于 07-12 09:47 1次下载
    <b class='flag-5'>DIY</b><b class='flag-5'>简易</b>PCL82低压<b class='flag-5'>电子</b>管放大器

    带BME280传感器的Arduino简易气象站

    电子发烧友网站提供《带BME280传感器的Arduino简易气象站.zip》资料免费下载
    发表于 07-11 15:44 0次下载
    带BME280传感器的<b class='flag-5'>Arduino</b><b class='flag-5'>简易</b>气象站

    Arduino DIY模拟温度计

    电子发烧友网站提供《Arduino DIY模拟温度计.zip》资料免费下载
    发表于 07-10 11:21 0次下载
    <b class='flag-5'>Arduino</b> <b class='flag-5'>DIY</b>模拟温度计

    使用Arduino和处理Android应用程序DIY车速表

    电子发烧友网站提供《使用Arduino和处理Android应用程序DIY车速表.zip》资料免费下载
    发表于 07-06 11:23 0次下载
    使用<b class='flag-5'>Arduino</b>和处理Android应用程序<b class='flag-5'>DIY</b>车速表

    Otto DIY Arduino蓝牙机器人易于3D打印

    电子发烧友网站提供《Otto DIY Arduino蓝牙机器人易于3D打印.zip》资料免费下载
    发表于 07-06 10:30 9次下载
    Otto <b class='flag-5'>DIY</b> <b class='flag-5'>Arduino</b>蓝牙机器人易于3D打印

    DIY安卓+Arduino控制迷宫游戏

    电子发烧友网站提供《DIY安卓+Arduino控制迷宫游戏.zip》资料免费下载
    发表于 06-29 14:53 0次下载
    <b class='flag-5'>DIY</b>安卓+<b class='flag-5'>Arduino</b>控制迷宫游戏

    DIY 8800W Arduino交流调光器

    电子发烧友网站提供《DIY 8800W Arduino交流调光器.zip》资料免费下载
    发表于 06-28 11:24 0次下载
    <b class='flag-5'>DIY</b> 8800W <b class='flag-5'>Arduino</b>交流调光器

    DIY Arduino蓝牙控制机器人

    电子发烧友网站提供《DIY Arduino蓝牙控制机器人.zip》资料免费下载
    发表于 06-27 14:59 1次下载
    <b class='flag-5'>DIY</b> <b class='flag-5'>Arduino</b>蓝牙控制机器人

    带有Arduino、乐高和3D打印部件的DIY双足机器人

    电子发烧友网站提供《带有Arduino、乐高和3D打印部件的DIY双足机器人.zip》资料免费下载
    发表于 06-27 11:44 0次下载
    带有<b class='flag-5'>Arduino</b>、乐高和3D打印部件的<b class='flag-5'>DIY</b>双足机器人

    DIY简易氦节点

    电子发烧友网站提供《DIY简易氦节点.zip》资料免费下载
    发表于 06-27 10:44 0次下载
    <b class='flag-5'>DIY</b><b class='flag-5'>简易</b>氦节点

    DIY Arduino IN-1数码管时钟

    电子发烧友网站提供《DIY Arduino IN-1数码管时钟.zip》资料免费下载
    发表于 06-26 10:39 0次下载
    <b class='flag-5'>DIY</b> <b class='flag-5'>Arduino</b> IN-1数码管时钟

    DIY Arduino猫喂食器

    电子发烧友网站提供《DIY Arduino猫喂食器.zip》资料免费下载
    发表于 06-20 14:24 1次下载
    <b class='flag-5'>DIY</b> <b class='flag-5'>Arduino</b>猫喂食器

    用于Arduino Due的简单DIY双端口I2C电平转换屏蔽

    电子发烧友网站提供《用于Arduino Due的简单DIY双端口I2C电平转换屏蔽.zip》资料免费下载
    发表于 06-15 11:39 0次下载
    用于<b class='flag-5'>Arduino</b> Due的简单<b class='flag-5'>DIY</b>双端口I2C电平转换屏蔽

    DIY转向蓝牙汽车arduino

    电子发烧友网站提供《DIY转向蓝牙汽车arduino.zip》资料免费下载
    发表于 06-14 15:12 0次下载
    <b class='flag-5'>DIY</b>转向蓝牙汽车<b class='flag-5'>arduino</b>

    用于Arduino Due的DIY Braccio机器人手臂护罩

    电子发烧友网站提供《用于Arduino Due的DIY Braccio机器人手臂护罩.zip》资料免费下载
    发表于 06-14 15:07 0次下载
    用于<b class='flag-5'>Arduino</b> Due的<b class='flag-5'>DIY</b> Braccio机器人手臂护罩