Code Monkey home page Code Monkey logo

splitheadelavator's Introduction

SplitHeadElavator

核心诉求

楼内两间电梯不联动,如何能够让两只电梯之间有通信和调度?

思路:

分为三个模块:

调度器,每一个楼层的带蓝牙传输的单片机,以及电梯本身的带蓝牙传输的单片机。

每一次电梯传输自己当前位置的时候,协议: 协议编号A/传输源ID/电梯编号/时间戳/返回楼层 or 确认消息/楼层/向上or向下

每一次调度信息传输的时候,协议: 协议编号B/传输源ID/电梯编号/时间戳/(指令 or 询问)/电梯楼层

每一次楼层按键的时候,协议: 协议编号C/传输源ID/楼层编号/时间戳

调度器保留最近100次调度时间戳/电梯编号组合,用于防止并发传输。因为蓝牙传输无法固定就送给某一个设备。假设蓝牙传输有效距离为10 m,电梯之间横向距离8 m,楼层间距离 3 m。

协议路由传输是相同的,规则: 协议A: BTA30 -> BTA29 -> ... -> BBA, BTB30 -> BTB29 -> ... BBB -> BBA BT 是bluetooth, 后面的A和B代表A组电梯还是B组电梯,BB的意思是blackberry 协议B: BBA -> BTA1(BBB) -> 一直向楼层上传,总归会遇到协议中想要的电梯 协议C: BTA15 -> BTA14 -> ... -> BBA

过程:

在某层按下按键,该层会把该信息传输到BBA调度,BBA询问电梯楼层,电梯返回后决定调度哪一架电梯,然后用协议传输到电梯,电梯返回确认按下消息,如果未能够返回确认按下消息,则重新调度

开发step:

首先希望完成的是能够手工输入一个楼层,看电梯如何调度; 之后再介入随机有人出入。

splitheadelavator's People

Contributors

feengineer avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.