Giter Site home page Giter Site logo

ftsrg / bme-modes3 Goto Github PK

View Code? Open in Web Editor NEW
16.0 16.0 8.0 103.2 MB

Model-based Demonstrator for Smart and Safe Systems

Home Page: https://inf.mit.bme.hu/research/projects/modes3

Xtend 6.73% JavaScript 0.61% Java 19.45% CSS 0.20% HTML 3.62% C++ 58.64% C 0.68% Makefile 0.67% Shell 0.49% CMake 1.02% PHP 0.01% Python 7.47% M4 0.41%

bme-modes3's People

Contributors

baloghlaszlo avatar benedekh avatar ecsedigergo avatar farkasferi avatar fuzesimate avatar hegyibalint avatar imbur avatar leventebajczi avatar micskeiz avatar pappist avatar szarnyasg avatar zsoltmazlo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

bme-modes3's Issues

Refactor IMessageDispatcher

The interface is not capable of registering message handlers yet. If anyone in the future would implement a new data transfer format, then this part will have to be refactored accordingly.

Related issue #38

Programmed train control

Provide support for programmatic control of both the trains and the turnouts. As we discussed before in person, the task should cover the following steps:

  • Define the operations for the trains an the turnouts
  • Implement a "dispatcher" application that is able to execute commands on the table
  • Create a java jar and C library for application developers
  • Extract the parameters of the communication to a configuration file (e.g. topic passwords, broker IP, etc...)

Missing DCC parts

  • connecting one rail to DCC (one side of the table already done)
  • PC Interface mounting and connection

DCC-PC interface based train control

  • Test the PC interface on the new board
  • Create a tightly coupled C++ based MQTT/Protobuf stack
  • Implement command/state features
  • Test the communication between this and other components

Implement web-based MoDeS3 controller

  • Upload boilerplate
  • Create static view
  • Make the page capable of displaying the status of the demonstrator
  • Make the page capable of controlling the demonstrator's hardware components

Implement section occupancy query component

So far this component was deployed on Arduino as a C++ code. It communicated with the network through MQTT. The objective was to query the section occupancies through RJ45 ('telephone cable') using S88 protocol and transfer this information (sections occupancy vector) through the network.

Main questions regarding this issue:

  1. Where is component is going to be deployed? E.g. Arduino, BBB, Raspberry Pi
  2. What language is this component going to be implemented in? C++, Java, etc.
  3. If it is going to be implemented in a language different from C++, then how the S88 protocol is going to be simulated (e.g. shift-register with timers implemented in C++ for Arduino)?
  4. Are we going to transfer the whole occupancy vector for the network or each section's occupancy will be transferred separately?

asdasdas

  • elso reszfeladat
  • masodik reszfeladat

Integration of the safety system designed in yakindu

  • create proto messages for the inter-statechart communication (between the BBBs)
  • integrate the generated Yakindu codes with the (communication) software stack
  • write unit tests for the statecharts
  • write integration tests for the statecharts and its integration with the software stack

Implement logging for BBB

Implement logging for section enable/disable, turnout status info query and section status info query submodules. These are in the code package for BBB, because BBB is capable of querying and setting the physical status.

Update pin allocation

Update the control methods which disable/enable section or set the turnout straight/divergent according to the new pinout headers, as soon as the corresponding PCB’s are manufactured.

Turnout control safety check

If the master becomes the responsible unit of the turnout control, a new feature can be added to check the occupation of the turnout before setting it. With this feature, the master can make sure no train is on the turnout in the moment of switching.

Register custom MessageDispatcher

Please make it possible in the hu.bme.mit.inf.modes3.messaging.communication.factory.CommunicationStack class to register a custom dispatcher that implements the IMessageDispatcher interface. In this way we could register message dispatchers for those messages which are not handled by the default ProtobufMessageDispatcher.

The other possible solution would be a Factory which makes it possible to create a CommunicationStack that uses the referred custom dispatcher.

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.