CN115413341A - 模块组件及其多主通信方法 - Google Patents

模块组件及其多主通信方法 Download PDF

Info

Publication number
CN115413341A
CN115413341A CN202180004089.7A CN202180004089A CN115413341A CN 115413341 A CN115413341 A CN 115413341A CN 202180004089 A CN202180004089 A CN 202180004089A CN 115413341 A CN115413341 A CN 115413341A
Authority
CN
China
Prior art keywords
module
modules
bus
data
time
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
CN202180004089.7A
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.)
Les Robo Co ltd
Original Assignee
Les Robo 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
Priority claimed from KR1020210041900A external-priority patent/KR102489255B1/ko
Application filed by Les Robo Co ltd filed Critical Les Robo Co ltd
Publication of CN115413341A publication Critical patent/CN115413341A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/368Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control
    • G06F13/376Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control using a contention resolving method, e.g. collision detection, collision avoidance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/4031Coupling between buses using bus bridges with arbitration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4247Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40019Details regarding a bus master
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40084Bus arbitration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/403Bus networks with centralised control, e.g. polling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/407Bus networks with decentralised control
    • H04L12/413Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD]
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63HTOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
    • A63H33/00Other toys
    • A63H33/04Building blocks, strips, or similar building parts

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Bus Control (AREA)

Abstract

根据本发明实施例,本发明涉及模块组件及其多主通信方法,更详细地,涉及一种模块组件,包括多个模块,所述多个模块相互结合时形成基于开漏极的单线通信总线并能够接收发送数据,所述多个模块中需要发送数据的至少一个模块感测所述单线通信总线状态,如果为接通状态,则在预设的第一次仲裁时间内输出低信号,第一次宣布发送意愿,所述第一次宣布发送意愿的至少一个模块在第二次仲裁时间内输出高信号,第二次宣布发送意愿,在所述第二次仲裁时间内最后输出高信号的模块取得最终总线占用。

Description

模块组件及其多主通信方法
技术领域
本发明涉及模块组件及其多主通信方法,更详细地,涉及一种结合多个具备UART接口的模块并共享单线(one-wire)通信总线,基于开漏极特性来仲裁发送优先权以防止冲突,从而可以实现多主通信的模块组件及其多主通信方法。
背景技术
最近提出了以教育、趣味、研究、生产等为目的的基于多样模块的制作工具。这些制作工具中包括的模块分别可以执行特定的功能,并能够相互连接而形成模块组件。
此时,各个模块也能够彼此电气连接而接收发送能量、信号、数据等。使用者可以根据提供的手册或自行创建的方式组装模块,制作执行特定目的的模块组件。
这种模块组件可以通过执行所组装的多个模块间的数据接收发送来执行特定目的,为了模块间的数据接收发送,需要对模块间总线的共享及对总线占用优先权的仲裁等。
作为用于数据接收发送的通信总线,往往利用CAN通信。作为利用这种CAN通信的模块,专利文献有韩国公布专利第2017-0104306号(以下简称专利文献1)。在专利文献1中,特定模块根据仲裁方法而作为主模块而运转,所述仲裁方法基于根据CAN通信方式而预设的优先次序。
一般来说使用的方式是,CAN通信具有按每个模块预设的优先次序,基于优先次序,按照宣布发送意图的次序提供总线占用权。因此,在实现多主通信时,一般使用CAN通信。
当利用CAN通信时,易于实现模块间的即插即用,易于实现广播网络,具有高可靠度,可以提高系统控制速度和安全性。
为了应用这种CAN通信,需支持模块的处理性能。但是,考虑到单价及功能,使用低性能处理器的模块组件由于性能上的制约,在使用CAN通信方面存在困难,应用CAN通信时导致费用显著上升。
因此,需要一种即使在模块的处理性能等不足的情况下也可以通过总线占用仲裁来实现多主通信的方法。
现有技术文献
(专利文献0001):韩国公开专利第2017-0104306号(2017年9月15日公开)
发明内容
本发明要解决的课题是提供一种模块组件及其多主通信方法,结合多个具有UART接口的模块并共享单线(one-wire)通信总线,基于开漏极特性来仲裁发送优先权以防止冲突,从而可以实现多主通信。
为了解决如前所述的问题,本发明一实施例的组件模块可以包括在相互结合时形成基于开漏极的单线通信总线并可接收发送数据的多个模块。
此时,所述多个模块中需要发送数据的至少一个模块可以感测所述单线通信总线状态,如果为接通状态,则可以在预设的第一次仲裁时间内输出低信号,第一次宣布发送意愿;所述第一次宣布发送意愿的至少一个模块可以在第二次仲裁时间内输出高信号,第二次宣布发送意愿;在所述第二次仲裁时间内最后输出高信号的模块可以取得最终总线占用。
另外,各个模块可以包括:处理器,所述处理器在有要传输的数据时,输出用于所述第一次宣布和第二次宣布的控制信号;以及通信单元,所述通信单元根据所述输出的控制信号,切换所述单线通信总线连接,在仲裁时间内输出低信号或高信号。
另外,所述通信单元的输入输出端可以由开漏极构成。
另外,如果从所述处理器接到高电平的控制信号,则所述通信单元可以启动并输出低信号。
另外,如果从所述处理器接到低电平的控制信号,则所述通信单元可以关断并输出高信号。
另外,如果至少一个模块输出低信号,则所述单线通信总线可以成为接地状态。
另外,在所述多个模块均输出高信号时,所述单线通信总线可以成为接通状态。
另外,所述多个模块可以均设置为在第一次仲裁时间开始时输出高信号,如果单线总线状态因所述第一次宣布而成为接地状态,则未宣布发送意愿的模块可以在所述第一次仲裁时间和第二次仲裁时间期间保持高信号。
另外,所述取得最终总线占用的模块可以通过所述单线通信总线,将发送数据传输给另一模块,如果从所述取得最终总线占用的模块接收的数据的目的地信息与自身的ID不同,则所述另一模块可以废弃所述接收的数据。
另外,所述多个模块可以成为主模块,可以利用依次包括起始段(SoF)、控制段、数据段、CRC段、ACK段及仲裁段的数据帧来接收发送数据。
另外,所述通信单元可以成为UART通信接口。
另外,根据本发明一实施例提供一种模块组件的多主通信方法,所述模块组件包括多个模块,所述多个模块在相互结合时形成基于开漏极的单线通信总线而能够接收发送数据,所述模块组件的多主通信方法可以包括:所述多个模块中需要发送数据的至少一个模块感测所述单线通信总线状态,如果为接通状态,则在预设的第一次仲裁时间内输出低信号而第一次宣布发送意愿的步骤;所述第一次宣布发送意愿的至少一个模块在第二次仲裁时间内输出高信号而第二次宣布发送意愿的步骤;以及在所述第二次仲裁时间内最后输出高信号的模块取得最终总线占用的总线占用步骤。
另外,所述多个模块可以包括处理器及输入输出端由开漏极构成的通信单元,所述第一次宣布发送意愿的步骤可以包括:在每个所述需要发送数据的至少一个模块中,在有要发送的数据时所述处理器监控所述单线通信总线,如果为接通状态,则在所述第一次仲裁时间内输出用于第一次宣布的高信号的步骤;以及所述通信单元根据从所述处理器输出的高信号而启动并输出低信号的步骤。
另外,所述第二次宣布发送意愿的步骤可以包括:所述处理器在第二次仲裁时间内输出用于第二次宣布的低信号的步骤;以及所述通信单元根据从所述处理器输出的低信号而关断并输出高信号的步骤。
另外,如果至少一个模块输出低信号,则所述单线通信总线可以成为接地状态。
另外,在所述多个模块均输出高信号时,所述单线通信总线可以成为接通状态。
另外,所述多个模块可以设置为在第一次仲裁时间开始时均输出高信号,如果单线总线状态因所述第一次宣布而成为接地状态,则未宣布发送意愿的模块可以在所述第一次仲裁时间及第二次仲裁时间期间保持高信号。
另外,可以还包括:所述取得最终总线占用的模块通过所述单线通信总线而向另一模块传输发送数据的步骤;及如果从所述取得最终总线占用的模块接收的数据的目的地信息与自身ID不同,则所述另一模块废弃所述接收的数据的步骤。
另外,所述多个模块可以成为主模块,可以利用依次包括起始段(SoF)、控制段、数据段、CRC段、ACK段及仲裁段的数据帧来接收发送数据。
另外,所述通信单元可以成为UART通信接口。
根据本发明一实施例的模块组件及其多主通信方法结合多个具有UART接口的模块并共享单线(one-wire)通信总线,基于开漏极特性来仲裁发送优先权以防止冲突,从而能够体现多主通信。
因此,无需实现CAN通信便可通过发送优先权仲裁来执行多主通信,并可以降低模块单价。
另外,只执行第一次仲裁时,由于模块的处理速度局限,难以确定正确的总线占用模块,但在本发明一实施例中,基于开漏极特性来执行第一次仲裁及第二次仲裁,一个模块可以占用总线,从而可以克服处理速度的局限。
另外,在数据帧的最后段具备仲裁段,总线由在第二次仲裁时最后输出高信号的模块(取得总线占用权模块)接通,同时,取得总线占用权的模块可以通过共享总线而传输数据帧。
另外,通过插入、接触等硬件方式的结合及开漏极而在模块间形成共享总线,从而可以容易地添加及去除用于多主通信的模块。
本发明的效果不由以上举例的内容所限定,更多样的效果包括于本说明书内。
附图说明
图1是示出根据本发明一实施例的模块组件的简要构成的框图。
图2是示出图1的模块组件组装形态的立体图。
图3是示出图2的模块组件中部分结合的模块的内部结构的俯视图。
图4是用于说明根据本发明一实施例的通信单元中应用的开漏极的特性的图。
图5是用于说明根据本发明一实施例的形成单线通信总线的开漏极的特性的图。
图6是示出根据本发明一实施例的传输帧的图。
图7是用于说明根据本发明一实施例的模块组件的总线占用仲裁的仲裁段时间表。
图8是用于说明在图7的第一次仲裁时间第一次宣布发送意愿的优先权候选的时间表。
图9是用于说明根据本发明一实施例的模块组件的多主通信方法的流程图。
具体实施方式
下面内容只对发明原理进行举例。因此,虽然未在本说明书中明确说明或示出,但从业人员可以发明体现发明的原理并包括于发明概念和范围的多样装置。另外,本说明书中列举的所有条件术语和实施例,原则上只明确用于帮助理解发明的概念,不应理解为限定于如此特别列举的实施例和状态。
另外,在以下说明中,诸如第一、第二等的序数式表达用于说明彼此平等且独立的客体,应理解为其次序中没有主(main)/副(sub)或主(master)/从(slave)的意义。
通过与附图相关的如下详细说明,上述目的、特征及优点将更加明确,因此,发明所属技术领域的普通技术人员可以容易地实施发明的技术思想。
本发明多个实施例的各个特征可以部分性地或整体性地相互结合或组合,从业人员可以充分理解,能够在技术上实现多样联动和驱动,各实施例既可以相对于彼此独立地实施,也可以通过关联关系而一同实施。
下面参照附图,详细说明本发明的多样实施例。
图1是示出根据本发明一实施例的模块组件的简要构成的框图。根据本发明一实施例的模块组件可以包括多个模块100a至100n,所述多个模块100a至100n在相互结合时形成基于开漏极的单线通信总线10而能够接收发送数据。
各个模块100a至100n可以包括处理器110和通信单元120,通信单元120可以成为UART接口,输入输出端可以以开漏极构成。
此时,处理器110和通信单元120可以以一个微处理器实现,微处理器在未构成开漏极时,也可以独立地配备并连接。
根据本发明一实施例的模块组件在各模块中执行总线占用仲裁并确定确定传输模块,从而可以实现多主通信。为了理解对此的说明,在说明作为本发明主要特征的总线占用仲裁方法之前,首先通过图2和图3,说明根据本发明一实施例的模块的结构和模块间结合,通过图4和图5,说明根据本发明一实施例的通信单元的开漏极特性。
图2是示出图1的模块组件组装形态的立体图,图3是示出图2的模块组件中部分结合的模块的内部结构的俯视图。通过图2和图3可知,通过各模块100a至100n的结构和模块间结合而形成单线通信总线10。
模块组件也可以定义为可相互组装的多个模块100a至100n的集合或由他们组装的结构体,不受其目的、种类、形态、模块的个数等所限制。
多个模块100a至100n可以定义为构成得能够与其他模块或外部装置接收发送代表电压或电流变化的信号、数据或电能(以下也称为“电信号”)的客体。这些模块具备中央处理器(CPU)、存储器316、电源等,或具备接受其他模块的控制而能够运转的感测(Sensing)装置、处理(Processing)装置及驱动(Driving)装置等,因而能够各自独立地驱动。
另外,各个模块100a至100n也可以构成得独立地执行特定的功能,或借助于与其他模块的相互作用而执行特定的功能。在模块具备中央处理器(CPU)的情况下,也可以按各个模块安装有固件(Firmware)。
如上所述,各个模块100a至100n可以分为输入(Input)模块、输出(Output)模块、设置(Setup)模块。
其中,输入模块可以包括:能够从遥控器等接收红外线信号的红外线模块(IR(Infrared)module);能够感知X、Y、Z轴变化角度与加速度的陀螺仪传感器模块(Gyroscopemodule);能够利用模块手柄的旋转来测量旋转角度或旋转速度的旋钮模块(Dialmodule);感测按钮的按压并感测点击、双击、按下状态,使用触发器(Toggle)而使得能够保持接通/关断(On/Off)状态的按钮模块(Button module);能够测量温度、湿度、照度等的环境模块(Environment module);能够感测周边的声音强度(dB)和频率的麦克风模块(Micmodule);以及能够感知距离的超声波模块(Ultrasonic module)等。
另外,输出模块可以包括:能够随颜色变更而实现视觉显示的LED模块(LEDmodule);扬声器模块(Speaker module);将使用者绘制的图画、文字或模块信息等显示于画面的显示装置模块(Display module);设置速度、角度、扭矩(Torque)并将电信号发送给马达模块而使得进行旋转运转的马达控制器模块(Motor Controller module);或者能够将从马达控制器接到的电信号变换成旋转运动的马达模块(Motor;MDP-14)等。
另外,设置模块可以包括向另一模块供应电源时使用的电池模块(Batterymodule)以及通过蓝牙(Bluetooth)、无线保真(WiFi)或USB连接而使模块可以与PC、智能手机或模块连接的网络模块(Network module)等。
另外,各个模块100a至100n也可以借助于电缆而与外部的驱动装置连接。此时,模块组件300可以是接收遥控器或智能手机的信号并使马达选择性地运转的装置。
如上所述的模块组件的构成只不过是一个示例,各个模块100a至100n可以独立地提供,或以通过与其他模块的联动而能够执行任意功能的方式提供。
多个模块100a至100n可以是具有多个侧面的多边形柱状几何体,以便能与相邻的另一模块实现面接触。其中,面接触并非只意指侧面的所有面积均进行接触,应理解为包括只有侧面的一部分接触,某一模块的侧面与另一模块的侧面彼此相向且实现部分接触的含义。
参照图2,以各个模块100a至100n具有正方形平面的情形为例进行了图示,但也可以以平面为等边三角形、矩形、正五边形等的多边形柱状形成,特别是也可以以正多边形形成。部分模块也可以具有互不相同的立体形状。另外,模块中的一部分也可以具有锥形、多面体等多样的立体形状。
各模块100a至100n可以包括:外壳1,所述外壳1形成外观;端子2,所述端子2露出于所述外壳1的侧面,能够向连接的其他模块传递或接收电信号等;销安装部105,所述销安装部105提供选择性凸出到外壳外部的结合销(图2的3或图3的108);及销容纳部(图2的4或图3的103),所述销容纳部供另一模块的结合销插入。
其中,结合销108、销安装部105及销容纳部(图2的4或图3的103)配备成用于使邻接的两个模块彼此连接的结合机构。在图3的本实施例中,配备有在本体壳1b的侧面配备的结合销108、用于利用磁力吸引所述结合销108的磁铁109。借助于所述结合销108和所述磁铁109,配置于邻接位置的两个模块可以借助于磁力而彼此吸引并结合。在本实施例中,虽然以结合销108和磁铁109为例说明了结合机构,但不限于此,当然也可以使用其他方式的结合机构。例如,在所述本体壳1b上配备有凸出部和容纳所述凸出部的凹入部,也可以以两个相邻模块的所述凸出部和所述凹入部彼此结合的方式使两个模块结合。
外壳1作为以平面为正方形的直六面体形状形成的盒子,保护内部的构成品。外壳1如图2所示,可以以上壳1a与下壳1b结合的形态提供。构成外壳1的方法根据需要,可以由上壳1a与下壳1b一体形成,或者也可以分成更多部分而组装。
另外,下壳1b还可以包括形成外形及内部结构的框架、在框架内侧提供的基板102及安装于基板102的功能单元104。更详细地,在基板102上可以贴装有用于实现第一模块100a功能的功能单元104,可以固定安装于框架的内侧空间中央部。功能单元104例如可以是包括根据本发明一实施例的处理器110及通信单元120的微处理器,模块的种类(输入(Input)模块、输出(Output)模块、设置(Setup)模块)可以根据功能确定。
对于其他本申请发明模块的更详细结构及结合,已在韩国授权专利公报第10-1761596号中详细记载,作为参照包含于本申请专利说明书中。
端子2可以向连接的其他模块传递或从其他模块接收电信号等,例如,可以从在外壳1内部提供的基板102接收电信号等,并传递给与端子接触的其他模块的端子。端子2可以具有多个接触点或连接针,其可以根据电信号等的传递方法、标准化规格等而具有多样形态。
这种端子2可以与销(图2的3或图3的106)、销安装部105、销容纳部(图2的4或图3的103)构成一组并配置于外壳1的侧面。具体地,端子2可以配置于销(图2的3或图3的106)与销容纳部(图2的4或图3的103)之间,可以接触在其他模块的销与销容纳部之间配置的端子。在本实施例中,虽然是以在外壳1的所有侧面提供端子2的情形为例,但根据实施例,也可以存在未形成有端子2的侧面。
此时,在本发明一实施例中可以利用UART端子,以开漏极构成,如图3所示,在模块间以硬件方式结合时,可以形成基于开漏极的单线通信总线10。例如,模块100a至100n的端子2的一个销106可以成为开漏极输出针,各模块的端子2的销106可以彼此连接而形成单线通信总线10并共享。
框架是构成外壳1的一部分或全部的结构物,形成外壳1的一部分或全部的外形,可以提供用于在内部安装各种部件的空间和结构。在本实施例中,以框架形成外壳1的下部壳1b,以四边形形状形成并具有4个角(corner)的情形为例进行说明,但本发明的权利范围不限于此。
如上述图2和图3所示,在根据本发明一实施例的模块组件中,多个模块100a至100n可以通过硬件方式结合而连接通信单元120的开漏极输出,从而可以形成共享总线10。因此,可以容易地添加及去除用于多主通信的模块。
在本发明一实施例中,通信单元120成为UART通信接口,可以将从处理器110接收的数据和控制信号输出到Tx(发送部),通过单线通信总线10传输给另一模块,并通过Rx(接收部)接收另一模块的处理器110通过单线通信总线10传输的数据。
此时,通信单元120的Tx(发送部)和Rx(接收部)由一条线形成,在相应模块的处理器110的控制下作为通信单元120的Tx(发送部)和Rx(接收部)而运转,发送及接收的数据可以记录于通信单元120的缓冲器并读取。
在本发明一实施例中,通信单元120的输入输出端可以以开漏极实现。即,所述通信单元120的缓冲器可以成为开漏极缓冲器。
通过图4和图5,可以考查根据本发明一实施例的通信单元中应用的开漏极的特性。
图4是用于说明根据本发明一实施例的通信单元中应用的开漏极的特性的图。考查图4的(a)和(b),处理器110的控制信号可以输入栅极,场效应晶体管(MOSFET)可以根据控制信号的电平而启动或关断,确定确定漏极输出。另外,开漏极的漏极输出可以与另一模块的漏极输出相连接。
在图4的(a)中,输入低信号作为控制信号,场效应晶体管关断,从而通过上拉电阻Rp连接于外部电源VDD,漏极输出成为逻辑“1”,即,成为高(high)信号。另一方面,在图4的(b)中,输入高信号作为控制信号,场效应晶体管MOSFET启动,从而漏极输出借助于上拉电阻而接地,漏极输出成为逻辑“0”,即,成为低(low)信号。
即,如果通过开漏极结构而从处理器110接收了高电平的控制信号,则启动并输出低信号,如果从处理器120接收了低电平的控制信号,则各模块的通信单元120关断并输出高信号。
图5是用于说明根据本发明一实施例的形成单线通信总线的开漏极的特性的图。图5是彼此连接多个模块100a及100b的开漏极输出的情形,可以形成单线通信总线。在图5中,为了便于理解,连接两个模块进行了说明,但可以以相同方法连接更多模块的漏极输出。
考查图5,第一模块100a的开漏极缓冲器为关断状态、第二模块100b开漏极缓冲器为接通状态的两个输出彼此连接而形成单线通信总线。此时,第一模块100a输出逻辑“1”,即输出高信号,从而成为从第一模块的电路分离的状态。因此,第一模块100a不对第二模块100b输出造成影响,第二模块100b发挥排出从外部电源经过上拉电阻而流入的电流的作用。
即,第一模块100a不影响输出,因而连接第一模块100a和第二模块100b的开漏极输出而形成的单线通信总线的逻辑为“0”,即为低。
如上所述,如果所连接的至少一个模块成为逻辑“0”,即,输出低信号,则根据本发明一实施例的连接开漏极输出的单线通信总线10成为接地状态,当多个模块100a至100n均输出逻辑“1”,即,均输出高信号时,根据本发明一实施例的连接开漏极输出的单线通信总线10成为接通状态。
如上述图2至图5所示,为了利用连接开漏极输出的基于开漏极的单线通信总线来执行多主通信,本发明一实施例的模块组件的各模块100a至100n可以参与第一次仲裁和第二次仲裁,所述第一次仲裁和第二次仲裁执行旨在取得总线占用的发送意愿宣布。
其中,第一次仲裁可以是在第一次仲裁时间内第一次宣布发送意愿的模块成为发送优先权候选的过程,第二次仲裁可以是在与第一次仲裁时间连续的第二次仲裁时间内,成为发送优先权候选的至少一个模块为了最终总线占用而第二次宣布发送意愿的过程。
根据本发明一实施例的多个模块100a至100n为了通过单线通信总线10发送数据,各模块100a至100n可以执行由处理器110输出用于宣布发送意愿的控制信号、由通信单元120根据处理器110的控制信号来切换单线通信总线10连接而占用总线所需的动作。
具体地,多个模块100a至100n中需要发送数据的至少一个模块可以感测单线通信总线10的状态,在预设的第一次仲裁时间内输出低信号,第一次宣布发送意愿。
此时,当单线通信总线10为接通状态时,第一次宣布发送意愿的模块可以成为发送优先权候选。成为发送优先权候选的模块可以参与旨在占用总线的第二次仲裁,未能成为发送优先权候选的模块退出总线占用而成为接收数据的接收模块。
然后,成为发送优先权候选的至少一个模块可以在第二次仲裁时间内输出高信号,第二次宣布发送意愿,在第二次仲裁时间内最后输出高信号的模块可以最终取得总线占用。
即,总线被在第二次仲裁时间最后输出高信号的模块(取得总线占用模块)接通,取得总线占用模块可以成为传输数据帧的传输模块。
通过图7及图8,可以说明根据本发明一实施例的用于多主通信的总线占用的各模块的发送宣布。此时,根据本发明一实施例的模块组件利用作为异步式串行通信的UART,因而可以利用基于UART规格的如图6所示的数据帧来接收发送数据。也可以根据设计者意图而变形应用。
一般而言,UART是一种计算机或外围设备,是将并行数据串行化并进行通信的个体集成电路,一般包括于MCU中。由于是异步通信,因而不传递同步信号。因此,承诺可以在接收端找出同步信号并及时处理数据的起始与结束。为此,在数据帧中需要用于通知起始与结束的段。
图6是示出根据本发明一实施例的传输帧的图。
在本发明一实施例中,多个模块100a至100n如图6所示,可以利用依次包括起始段(SoF)21、控制段22、数据段23、CRC段24、ACK段25及仲裁段26的数据帧20来接收发送数据。
其中,起始段21意指帧的开始,保持一个位时间长度,用于通知从现在起根据确定的协议开始通信。
控制段22可以是传输数据的长度、CRC长度及控制信号等的段。
数据段23是要传输的数据区域,可以包括传输的模块的ID、目的地模块的ID及数据区域。
CRC(循环冗余校验)段24可以是用于确认数据帧完整性的段。
ACK(确认字符)段25是传输接收模块对数据接收的响应的段。
仲裁段26是在相应数据帧结束时,确定确定将通过总线占用来发送下个数据的模块的段。另外,仲裁段26是通知数据帧结束的结束位,可以通知通信结束。
根据本发明一实施例的仲裁段26可以通过图7及图8进行说明。图7是用于说明根据本发明一实施例的模块组件的总线占用仲裁的仲裁段时间表。图8是用于说明在图7的第一次仲裁时间第一次宣布发送意愿的优先权候选的时间表。
根据本发明一实施例的多个模块100a至100n可以设置为在第一次仲裁时间开始时,即如果ACK段结束,则均输出高信号。
参照图7,根据本发明一实施例的仲裁段分为第一次仲裁时间和第二次仲裁时间,确定将发送下个数据的传输模块。
如果模块组件包括模块1至模块5,则在仲裁段起始时,模块1至模块5均设置为高信号,其中有要发送的数据的模块1、模块4和模块5可以在第一次仲裁时间内输出低信号,第一次宣布发送意愿。此时,各模块的处理器110可以在监控单线通信总线的状态(接通或接地)的同时控制通信单元120,以便在单线通信总线的状态为接通时输出低信号。
考查图7,可以确认在随机时间a,模块1和模块5输出低信号。此时,处理器110按预设的总线状态感测周期来监控单线通信总线的状态,因而总线状态感测周期可以根据性能而不同。如图8所示,处理器110按照总线状态感测周期(图8的t)单位来感测总线状态,如果感测到总线为接通状态,则控制使得在第一次仲裁时间内通过通信单元120输出低信号。
因此,虽然模块5实际上先抢到了钥匙,但模块1和模块5在总线状态感测周期t2确认总线接通状态并在t3输出低信号,可以判断为由于自身的低信号输出,总线转换成接地状态。
因此,在本发明一实施例中,为了确定正确的总线占用模块,在第二次仲裁时间内执行第二次仲裁。在总线接通状态下输出低信号并第一次宣布发送意愿的模块1和模块5可以成为发送优先权候选并参与第二次仲裁。
另一方面,模块4为了宣布发送,在监控总线状态的同时试图输出低信号,但总线状态在发送意愿宣布之前已成为接地状态,因而无法输出低信号而是保持高信号。
另外,没有发送意愿的模块2和模块3也保持高信号。
结果,在第一次仲裁中,模块1和模块5在第一次仲裁时间中的同时段(图7的随机时间a、图8的t3)输出低信号,从而可以成为发送优先权候选,总线状态可以成为接地状态。
然后,成为发送优先权候选的模块1和模块5在第二次仲裁时间内输出高信号,从而可以第二次宣布发送意愿。此时,基于开漏极的单线通信总线在所有连接的模块中至少一个模块输出低信号时,总线状态成为接地状态。考查图7的第二次仲裁时间,当模块1比模块5先输出高信号时,模块5输出低信号,因而总线状态保持接地状态。
另外,基于开漏极的单线通信总线在所有连接的模块均输出高信号时,总线状态成为接通。因此,总线可以因模块5而接通(on),模块5是在第二次仲裁时间最后第二次宣布发送意愿的模块。
因此,模块5是在第二次仲裁时间内最后输出高信号的模块,最终取得总线占用,成为可以发送下个数据的传输模块。
最终取得总线占用的模块可以通过单线通信总线10向另一模块传输数据,另一模块成为接收模块,从最终取得总线占用的模块接收数据,所接收的数据的目的地信息如果与自身ID不同,则将接收的数据废弃,如果与自身ID相同,则可以向ACK段发送ACK。
图9是用于说明根据本发明一实施例的模块组件的多主通信方法的流程图。图9可以基于图1至图8的模块组件来执行多主通信。
由多个模块100a至100n相互连接的模块组件可以共享基于开漏极的单线通信总线S900并执行模块间数据接收发送。此时,各模块成为没有主从关系的主模块,为了发送数据而需要用于总线占用的仲裁。此时,仲裁操作通过输出用于宣布发送的控制信号而实现,可以由各模块分别执行。
仲裁段起始时,连接于单线通信总线10的多个模块100a至100n均设置成输出高信号。此时,输出由外部电源确定。
多个模块100a至100n中需要发送数据的至少一个模块(S905:Y)可以监控单线通信总线10状态S915,并在预设的第一次仲裁时间内输出低信号,第一次宣布发送意愿S920。
另一方面,不需要发送数据的模块(S905:N)保持高信号输出S910。
然后,多个模块100a至100n中需要发送数据的至少一个模块在单线通信总线10为接通状态时,第一次宣布发送意愿并判断为抓到钥匙的情况下,可以成为发送优先权候选。
此时,多个模块100a至100n中需要发送数据的至少一个模块中成为发送优先权候选的模块(S925:Y)可以参与第二次仲裁,未能成为优先权候选的模块(S925:N)由于未宣布发送意愿而退出S935,保持高信号输出S910。
然后,成为发送优先权候选的至少一个模块可以在第二次仲裁时间内输出高信号,第二次宣布发送意愿S940。
此时,当有在第二次仲裁时间内输出低信号的模块时,单线通信总线保持接地状态,当所有模块在第二次仲裁时间内输出高信号时,单线通信总线成为接通状态。
因此,总线因在第二次仲裁时间内最后输出高信号的模块(S940:Y)而接通,并可由最后进行第二次宣布的模块取得最终总线占用。
最终取得总线占用的模块可以通过单线通信总线10而将数据传输给另一模块,另一模块成为接收模块,并从最终取得总线占用的模块接收数据,从而能够进行通信。
因此,根据本发明,结合多个具有UART接口的模块并共享单线(one-wire)通信总线,基于开漏极特性来对发送优先权进行仲裁,以便防止冲突,从而具有可以实现多主通信的效果。
特别是基于开漏极特性来执行第一次仲裁和第二次仲裁,使一个模块可以占用总线,从而能够克服处理速度的局限,且总线因在第二次仲裁时最后输出高信号的模块(取得总线占用权模块)而接通,同时,取得总线占用权的模块通过共享总线传输数据帧,从而总线占用及数据接收发送均可顺利进行。
以上参照附图,更详细地说明了本发明的实施例,但本发明并非局限于这种实施例,可以在不超出本发明技术思想的范围内多样地变形实施。
因此,本发明中公开的实施例不是用于限定而是用于说明本发明的技术思想,本发明的技术思想范围不由这种实施例所限定。
因此,应理解为以上描述的实施例在所有方面是示例性的,而不是限制性的。本发明的保护范围应根据以下权利要求书进行解释,处于与之同等范围内的所有技术思想应解释为包含于本发明的权利范围。

Claims (20)

1.一种模块组件,
包括多个模块,所述多个模块在相互结合时,形成基于开漏极的单线通信总线而能够接收发送数据,其中,
所述多个模块中需要发送数据的至少一个模块感测所述单线通信总线状态,如果为接通状态,则在预设的第一次仲裁时间内输出低信号,第一次宣布发送意愿,
所述第一次宣布发送意愿的至少一个模块在第二次仲裁时间内输出高信号,第二次宣布发送意愿,
在所述第二次仲裁时间内最后输出高信号的模块取得最终总线占用。
2.根据权利要求1所述的模块组件,其中,
所述模块包括:
处理器,所述处理器在有要传输的数据时,输出用于所述第一次宣布和第二次宣布的控制信号;以及
通信单元,所述通信单元根据所述输出的控制信号,切换所述单线通信总线连接,在仲裁时间内输出低信号或高信号。
3.根据权利要求2所述的模块组件,其中,
所述通信单元的输入输出端由开漏极构成。
4.根据权利要求2所述的模块组件,其中,
如果从所述处理器接到高电平的控制信号,则所述通信单元启动并输出低信号。
5.根据权利要求2所述的模块组件,其中,
如果从所述处理器接到低电平的控制信号,则所述通信单元关断并输出高信号。
6.根据权利要求1所述的模块组件,其中,
如果至少一个模块输出低信号,则所述单线通信总线成为接地状态。
7.根据权利要求1所述的模块组件,其中,
当所述多个模块均输出高信号时,所述单线通信总线成为接通状态。
8.根据权利要求1所述的模块组件,其中,
所述多个模块均设置为在第一次仲裁时间开始时输出高信号,
如果单线总线状态因所述第一次宣布而成为接地状态,则未宣布发送意愿的模块在所述第一次仲裁时间和第二次仲裁时间期间保持高信号。
9.根据权利要求1所述的模块组件,其中,
所述取得最终总线占用的模块通过所述单线通信总线将发送数据传输给另一模块,
如果从所述取得最终总线占用的模块接收的数据的目的地信息与自身的ID不同,则所述另一模块废弃所述接收的数据。
10.根据权利要求1所述的模块组件,其中,
所述多个模块成为主模块,
利用依次包括起始段、控制段、数据段、CRC段、ACK段及仲裁段的数据帧来接收发送数据。
11.根据权利要求2所述的模块组件,其中,
所述通信单元成为UART通信接口。
12.一种模块组件的多主通信方法,所述模块组件包括多个模块,所述多个模块在相互结合时形成基于开漏极的单线通信总线而能够接收发送数据,所述模块组件的多主通信方法包括:
所述多个模块中需要发送数据的至少一个模块感测所述单线通信总线状态,如果为接通状态,则在预设的第一次仲裁时间内输出低信号而第一次宣布发送意愿的步骤;
所述第一次宣布发送意愿的至少一个模块在第二次仲裁时间内输出高信号而第二次宣布发送意愿的步骤;以及
在所述第二次仲裁时间内最后输出高信号的模块取得最终总线占用的总线占用步骤。
13.根据权利要求12所述的模块组件的多主通信方法,其中,
所述多个模块包括处理器及输入输出端由开漏极构成的通信单元,
所述第一次宣布发送意愿的步骤包括:
在每个所述需要发送数据的至少一个模块中,在有要发送的数据时所述处理器监控所述单线通信总线,如果为接通状态,则在所述第一次仲裁时间内输出用于第一次宣布的高信号的步骤;以及
所述通信单元根据从所述处理器输出的高信号而启动并输出低信号的步骤。
14.根据权利要求13所述的模块组件的多主通信方法,其中,
所述第二次宣布发送意愿的步骤包括:
所述处理器在第二次仲裁时间内输出用于第二次宣布的低信号的步骤;以及
所述通信单元根据从所述处理器输出的低信号而关断并输出高信号的步骤。
15.根据权利要求12所述的模块组件的多主通信方法,其中,
如果至少一个模块输出低信号,则所述单线通信总线成为接地状态。
16.根据权利要求12所述的模块组件的多主通信方法,其中,
当所述多个模块均输出高信号时,所述单线通信总线成为接通状态。
17.根据权利要求12所述的模块组件的多主通信方法,其中,
所述多个模块设置为在第一次仲裁时间开始时均输出高信号,
如果单线总线状态因所述第一次宣布而成为接地状态,则未宣布发送意愿的模块在所述第一次仲裁时间及第二次仲裁时间期间保持高信号。
18.根据权利要求12所述的模块组件的多主通信方法,其中,还包括:
所述取得最终总线占用的模块通过所述单线通信总线而向另一模块传输发送数据的步骤;以及
如果从所述取得最终总线占用的模块接收的数据的目的地信息与自身ID不同,则所述另一模块废弃所述接收的数据的步骤。
19.根据权利要求12所述的模块组件的多主通信方法,其中,
所述多个模块成为主模块,
利用依次包括起始段、控制段、数据段、CRC段、ACK段及仲裁段的数据帧来接收发送数据。
20.根据权利要求13所述的模块组件的多主通信方法,其中,
所述通信单元成为UART通信接口。
CN202180004089.7A 2021-03-31 2021-10-28 模块组件及其多主通信方法 Pending CN115413341A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR1020210041900A KR102489255B1 (ko) 2021-03-31 2021-03-31 모듈 어셈블리 및 그의 멀티 마스터 통신방법
KR10-2021-0041900 2021-03-31
PCT/KR2021/015291 WO2022211204A1 (ko) 2021-03-31 2021-10-28 모듈 어셈블리 및 그의 멀티 마스터 통신방법

Publications (1)

Publication Number Publication Date
CN115413341A true CN115413341A (zh) 2022-11-29

Family

ID=83450327

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180004089.7A Pending CN115413341A (zh) 2021-03-31 2021-10-28 模块组件及其多主通信方法

Country Status (3)

Country Link
US (1) US11726942B2 (zh)
EP (1) EP4095707A4 (zh)
CN (1) CN115413341A (zh)

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7895301B1 (en) * 2004-05-21 2011-02-22 Uei Cayman Inc. Transmitting a codeset over a single-wire bus from a computer to a remote control device
US7322873B2 (en) * 2004-10-19 2008-01-29 Mega Brands America, Inc. Illuminated, three-dimensional modules with coaxial magnetic connectors for a toy construction kit
WO2011011084A1 (en) * 2009-07-24 2011-01-27 Modular Robotics Llc Modular robotics
DE102010062217B4 (de) * 2010-01-22 2018-11-22 Kinematics Gmbh Baukastensystem mit bewegungsfähigen Modulen
US10169278B2 (en) * 2013-07-31 2019-01-01 Infineon Technologies Ag LIN bus module
WO2016187517A1 (en) * 2015-05-20 2016-11-24 Robo Technologies Gmbh Connecting structures in a modular construction kit
KR20170104306A (ko) * 2016-03-07 2017-09-15 주식회사 럭스로보 모듈 시스템 및 모듈기반 로봇 시스템, 그리고 모듈 시스템의 업데이트 방법
KR101906823B1 (ko) * 2016-03-07 2018-12-05 주식회사 럭스로보 멀티 모듈 컴파일 시스템 및 멀티 모듈 컴파일 방법, 그리고 컴파일러 프로그램을 갖는 컴퓨터 판독가능 저장매체
CN107185259A (zh) * 2017-06-30 2017-09-22 美科科技(北京)有限公司 用于多方位连接的电子模块和模块化电子构建系统
CN111443308B (zh) * 2018-12-28 2022-09-23 深圳市优必选科技有限公司 一种磁吸式舵机及其热插拔检测电路和方位检测电路

Also Published As

Publication number Publication date
EP4095707A4 (en) 2023-07-26
US20220318177A1 (en) 2022-10-06
EP4095707A1 (en) 2022-11-30
US11726942B2 (en) 2023-08-15

Similar Documents

Publication Publication Date Title
TWI401572B (zh) 利用控制匯流排連接電子裝置之方法、發送裝置及接收裝置
KR101564791B1 (ko) 장난감 조립 시스템
US20180143916A1 (en) Universal serial bus (usb) system supporting display alternate mode functionality on a usb type-c adapter
US8465356B2 (en) Display puzzle
JP2008192123A (ja) インターフェースを自動的に切り替える保存装置
US9798380B2 (en) Modular apparatus and system for reconfigurable user inputs
JP2006024217A (ja) 複数の機能デバイスで単一のホスト・コントローラを共有すること
JP2004326342A (ja) モジュール型計算機システム及びi/oモジュール
CN108292153A (zh) 通用串行总线(usb)电力输送设备中的系统事件
JP2001067159A (ja) インターフェース切替装置
KR20150031733A (ko) 전기적 모듈러 빌딩 장치
CN109344098A (zh) 主从设备间的数据操作方法和装置
CN114041249A (zh) 连接器及利用连接器进行充电控制的方法
CN115413341A (zh) 模块组件及其多主通信方法
US20120096286A1 (en) Charging management method, charging control circuit and the host apparatus having the same
TW201901459A (zh) 音訊裝置的控制方法與系統
US20150347348A1 (en) Smart connector for electronic components
KR102489255B1 (ko) 모듈 어셈블리 및 그의 멀티 마스터 통신방법
CA2870914C (en) Modular apparatus and system for reconfigurable user inputs
CN209917265U (zh) 智能积木系统
CN209934087U (zh) 一种电子积木拓展板的系统
CN109126160B (zh) 插接组合积木
JP3734448B2 (ja) 充電ケーブル
CN107644577B (zh) 电子积木
Stan et al. The design of a scalable haptic system used for impaired people assistance

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