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

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

3天内不再提示

自动售货机MDB协议中文解析(六)MDB-RS232控制硬币器的流程和解析

自动售货机MDB接口技术 来源:自动售货机MDB接口技术 作者:自动售货机MDB接口 2024-08-19 15:53 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

MDB-RS232控制硬币器的指令说明及流程解析

MDB硬币器的控制指令列表如下:

wKgaombC-D2AdROZAAFowlDeR0g563.pngMDB-RS232与自动售货机MDB硬币器测试
  • 对于MDB-RS232适配器,适配器自身会进行POLL指令,分时读取硬币器的数据和状态。硬币器有接收到硬币或者有状态需要报告的时候,会在对应的时段把相应的数据通过MDB-RS232适配器发送给主机。因此主板开发工程师不需要考虑POLL指令和具体时序,只需要在需要的时候:发送 RESET复位指令,SETUP读取配置,然后根据SETUP的数据通过COIN TYPE使能对应类型的硬币。然后只要在有硬币变化或者找零后,通过TUBE STATUS指令去查询硬币器数量状态(为后续找零指令做数据准备)
  • 找零指令,一般只要适用0F02指令即可,一般不适用0DH指令。具体需要用到的指令,可以参考后面的指令列表,产品具体测试的过程中,也可以和我们的工程师讨论,会提供更多的技术支持。

指令 HEX代码 指令说明
RESET 08H 复位指令
SETUP 09H 读取配置信息
TUBE STATUS 0AH 读取钱管信息
POLL 0BH 轮询指令(不需要发送,由MDB-RS232适配器完成)
COIN TYPE 0CH

设定哪些硬币类型可以被接收以及可以被手动取出

(这个指令根据SETUP指令读取的硬币类型去设置适用)

DISPENSE 0DH 找零某个指定的硬币类型
EXPANSION 0FH

扩展指令(仅列出重要指令,其余可以咨询技术支持工程师)

0F 00 读取设备ID信息以及可选功能信息

0F 01 使能可选功能指令

0F 02 找零指令(按金额找零)

0F 03 找零状态查询

0F 04 找零金额查询

0F 05 状态查询

接下来我们简单介绍一下硬币器的开发指令序列及适用:

比如MDB-RS232通电后,我们会收到复位成功数据(以下测试数据为仅连接硬币器):

MDB-RS232在上电后,会主动向硬币器发送08H指令去复位,如果设备存在,会回复00确认。设备复位后,会报告0B。因此适用MDB-RS232控制支付设备时,我们只需要根据MDB-RS232报告的数据和状态就可以判断硬币器是否正常工作。

比如上面通电后串口收到的数据:

08 00:表示硬币器响应了复位指令,接下来收到的08 0B:表示复位成功

  • 接下来,就要读取配置

发送09H(读取配置参数,这个字节的参数都是相当重要的,必须要理解)

回复示例:031156050100030102000000000000000000000000000076

发送0F00(读取设备ID,这些参数和计算价格等无关,包括了设备代码,版本,厂家型号等,我们做DEX数据报告的时候一般都会向服务器报告这些参数,便于管理)

回复示例:49435430303031323334353637383943434D362D545741204D444201000000000366

发送0F01(完整指令示例: 0F0100000001)使能0F00参数说明里的Optional Features

回复示例:00

  • 运行过程中和硬币数据发生变化时候通过0AH指令去不断检测钱管里数量的变化

0A

回复示例:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

前面两个字节16个位表示哪个管子是满的,后面16个字节表示16个管子里硬币的数量

到这里,其实我们已经完成了基本的配置和读取

  • 接下来,我们就要根据需要接收硬币种类(或者禁止收币),发出对应的使能指令,比如

0CFFFFFFFF (发出这个指令后,硬币器就可以收钱了)

回复示例:00

0C00000000 (如果正在找零中,或者机器维护中,我们就需要暂停收币指令)

回复示例:00

下面等待MDB-RS232在有硬币投入或者投币状态发生变化时报告数据即可。当然一般设计工程师还是会每隔几秒适用一次0A指令实时读取钱管状态。能随时知道钱管里硬币的状态,为找零提供准确的依据。

收到投币数据: 08 51 01(示例数据,我们可以看MDB协议里0BH的回复那一段)

收到状态变化数据: 08 01(投币杆被按下)

08 02(找零BUSY)

如果区别是投币数据,还是状态数据呢?

投币数据是两个字节组成,第一个字节必然是大于40H的。所以我们收到数据,08开头,就确定是硬币器的数据,后面是51,就是投币数据,分解为二进制数据就是 0101 0001 00000001

(按MDB协议截图的解释就是:01类型的硬币,进入钱管,钱管里现在这个类型硬币有1个)

  • 接下来介绍以下找零周期

比如 0F0206 (0F02是固定的找零指令,后面的06就是要找的币值,当然这个币值是换算后的数值)

回复示例:00

硬币器找零过程中,会不断报告状态,比如找零BUSY,出口堵币等异常

以下列出找零时候标准的指令序列:

0A 回复:00000002000000000000000000000000000002读取钱管状态,判断是否有找零数量

0C00000000 回复:00 先禁止投币器收钱

0F0206 回复:00 开始发送找零指令

0F04 回复:0000 读取已经找零的数量,如果还没有找出去,就是00 00

0F04 回复:00 只回复了一个00,就表示找零已经结束

0F03 回复:00 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 03 最后再次查询找零个数

0CFFFFFFFF 回复:00 重新使能硬币器

  • 接下来我们介绍根据配置进行币值计算

比如 09H指令,我们读到的配置:031156050100030102000000000000000000000000000076

也就是计算比例是红色的0501,币值有0102 (0003表示最后两个位的硬币可以接收进钱管)

因此币类型0值是01:币值就是 01*5=5,然后除以10(小数点左移1位),也就是币金额为0.5

币类型1值是02:币值就是 02*5=10,然后除以10(小数点左移1位),也就是币金额为1

(这里就可以看出来,我们的硬币器接收一个0.5元,一个1元硬币)

找零指令 0F0206 这里的06,同样换算 06*5=30,然后除以10,就是找零3元

更多的技术,可以在产品具体测试的时候,咨询我们的专业技术人员

审核编辑 黄宇

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

    关注

    9

    文章

    2119

    浏览量

    70978
  • MDB
    MDB
    +关注

    关注

    1

    文章

    26

    浏览量

    9838
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    东芝TB5128HG步进驱动芯片,在商用售货机上的体验

    对于硬件工程师来说,硬件芯片选型一直是让人最头疼的事之一。最近一位做售货机的工程师,用我们的  TB5128HG  替换了之前的旧方案,分享一下客户在替换过程中的感受。 一、 最初为什么选它? 客户
    的头像 发表于 10-21 14:43 226次阅读

    电芯自动面垫分选装盒生产线的工作流程解析

    电芯自动面垫分选装盒生产线的工作流程解析|深圳比斯特自动
    的头像 发表于 09-28 10:29 345次阅读

    电表数据飞跃:耐达讯RS232转Profinet的协议转换技术揭秘

    自动化领域亟待解决的关键问题。 技术原理与实现路径 RS232转Profinet网关作为协议转换核心设备,通过硬件级协议解析实现通信制式转换
    的头像 发表于 08-11 14:57 515次阅读
    电表数据飞跃:耐达讯<b class='flag-5'>RS232</b>转Profinet的<b class='flag-5'>协议</b>转换技术揭秘

    MDB协议是什么?

    InBox 产品可以与MDB协议的设备进行对接,这个协议是哪个国家的?哪个协会推出来的?协议的具体内容是什么?如何进行对接?
    发表于 08-07 07:36

    RS232转EtherCAT网关让电力仪表开启\"躺赢\"模式

    在电力自动化领域,RS232仪表与Ethercat网络间的协议壁垒常令工程师头疼。如何低成本实现数据互通?本文从技术与应用角度解析这一问题的解决方案。 技术痛点与需求
    发表于 07-21 15:31

    自助售货机内嵌扫描应该要如何选用?

    技术参数、应用场景、成本效益三个维度,系统解析自助售货机内嵌扫描的选型策略。一、核心性能指标的精准把控扫描速度与精度‌是衡量扫描性能的首要指标。在移动支付场景下,高性能扫描
    的头像 发表于 05-07 14:25 484次阅读
    自助<b class='flag-5'>售货机</b>内嵌扫描<b class='flag-5'>器</b>应该要如何选用?

    RS232“变形记”,Profinet如何让电力通信设备“改头换面”

    在现代电力系统中,随着自动化和智能化技术的不断发展,通信协议的转换成为实现设备互联互通的关键环节。VING微硬创新RS232转Profinet技术为电力设备的升级和优化提供了有效的解决方案,本文将
    发表于 04-25 16:40

    HMC-MDB172 I/Q混频/IRM芯片技术手册

    HMC-MDB172是一款单芯片I/Q混频,可用作镜像抑制混频(IRM)或单边带上变频。 此款无源MMIC采用GaAs异质结双极性晶体管(HBT)肖特基二极管技术制造。 针对下变
    的头像 发表于 04-01 10:30 754次阅读
    HMC-<b class='flag-5'>MDB</b>172 I/Q混频<b class='flag-5'>器</b>/IRM芯片技术手册

    HMC-MDB171 I/Q混频/IRM芯片技术手册

    HMC-MDB171是一款单芯片I/Q混频,可用作镜像抑制混频(IRM)或单边带上变频。 此款无源MMIC混频采用GaAs异质结双极
    的头像 发表于 04-01 10:20 909次阅读
    HMC-<b class='flag-5'>MDB</b>171 I/Q混频<b class='flag-5'>器</b>/IRM芯片技术手册

    CAN报文流程解析

    CAN报文流程解析,直流充电桩上的CAN通讯解析过程
    发表于 03-24 14:03 10次下载

    MOSFET在自动售货机的应用 #MOSFET #自动售货机 #应用 #半导体 #电子

    MOSFET
    微碧半导体VBsemi
    发布于 :2025年02月10日 17:55:53

    PROFINET通讯协议报文解析

    PROFINET是一种广泛应用于工业自动化领域的通信协议,由PROFIBUS国际组织开发,基于以太网技术,支持工业控制系统和设备(如传感、执行
    的头像 发表于 02-03 14:29 6107次阅读

    小而精!Pico-ITX主板IB2-281轻松破解智能终端空间难题

    在城市的喧嚣角落,一台自动售货机静静地伫立,每当顾客轻触屏幕,选择心仪的商品,扫描二维码进行支付,它都能即时响应,顺利完成交易。同时,在展示商品的同时,自动售货机还循环播放着食品广告视
    的头像 发表于 12-26 10:33 1083次阅读
    小而精!Pico-ITX主板IB2-281轻松破解智能终端空间难题

    RS232接口的应用领域分析 RS232接口的接线方法和注意事项

    之间的数据通信。以下是RS232接口的一些主要应用领域: 计算机与外设通信 :RS232接口常用于连接计算机与打印机、调制解调、鼠标、扫描仪等外设。 工业自动化 :在工业
    的头像 发表于 12-18 18:06 6236次阅读

    RS232在工业自动化中的应用 RS232信号线如何选择

    RS232接口可用于连接PLC(可编程逻辑控制器)、传感等,实现自动控制。 通过RS232
    的头像 发表于 12-10 15:48 1819次阅读