Giter VIP home page Giter VIP logo

ide61131's Introduction

Hardella IDE logo        Flattr this

Hardella: IDE for PLC

About

Hardella is an IDE for programmable logic controllers (PLC). The main aim is to provide reasonable ST (61131-3) support (autocomplete, refactoring, etc). The IDE is based on JetBrains MPS and mbeddr.

Download

Just grab the latest version here: https://github.com/vlsi/ide61131/releases/latest

To update previous version, you can download "update...zip". For instance, Hardella-update-from-143-win.zip would update 143 or newer to the relevant release version.

Support, forum

Hardella's user forum is hosted at google groups: https://groups.google.com/forum/#!forum/hardella-forum If you have questions, please feel free to post a message or file an issue

Usage

In order to run Hardella, Java 1.8+ is required. Grab one here: https://www.java.com/en/download

Donate

Hardella is a free product. You can use it as you wish, hover if you like, please consider donating some money to support the project. Here are the ways you can donate money:

Flattr: Flattr this

Yandex.money: http://yasobe.ru/na/hardellaide or https://money.yandex.ru/to/410013031807962

Paypal: https://www.paypal.me/VladimirSitnikov

Videos

Samples

Autocomplete menu

autocomplete

Diagram editor

diagram editor

Sample ST program

sample ST program

PROGRAM PLC_PRG
  variables:
    input in : BOOL;
    output v1 : BOOL;
    input v2 : BOOL;
    superStruct : ARRAY[1..8#34] OF BOOL;
    tik : TON;
    ton : F_TRIG;
    a : WORD;
    q : COMPLEX;

  body:
    IF TON(IN := a.4, PT := T#4s).Q THEN
      v1 := TRUE + BYTE_TO_BOOL(2);
      v1 := TRUE;
      v1 := TRUE;
    END_IF;

    superStruct;
END_PROGRAM

License

This IDE is distributed under terms of MIT license.

Development

Install mbeddr, clone ide61131, hack as required.

Changelog

Next:

v1.7.2: 16 June 2017

  • Fixed: variable initializers are executed in PRU programs

v1.7.1: 6 May 2017

  • Fixed: compilation errors when project is stored in a path with spaces
  • Fixed: remove unused variables in generated PruMemoryTransfer program
  • Fixed: added a compilation error when FAST_INPUTS is used in PRU1 program (only PRU0 programs can access fast inputs for now)
  • Fixed: PRU_ABZ_ENCODER.initialOffset was renamed to positionOfLastZ
  • Fixed: support for VAR_IN_OUT (for PRU and for CoDeSys)
  • Fixed: PRU1 programs (init, memory read/write) will not run if PRU0 init was skipped

v1.7.0: 20 March 2017

  • Fixed: PRU-host communication (it was broken in 1.6.2)
  • Fixed: PDM_DW output was inversed
  • New feature: PRU cycle statistics (duration of the PRU program, and duration of PRU cycle)
  • New feature: comments after IF, ELSIF, etc

v1.6.2: 24 January 2017

  • Case-insensitive mode for autocomplete
  • Removed extra braces from NOT expressions
  • PRU: MemoryTransfer programs was split into MemoryRead and MemoryWrite
  • PRU: pruAccessLib.lib is no longer required

v1.6.1: 25 December 2016

  • Arguments are no longer red when replacing one FB call with another (e.g. TON(...) -> TOF(...))
  • Implemented automatic updates, so updates will be small and fast

v1.6.0: 19 December 2016

  • Both PRU cores can now be programmed. You can freely control 4 fast outputs and 2 fast inputs
  • Standard library is improved. For instance, there's a block for step motor control, a block for ABZ encoder, and several others
  • hardella.com has been launched
  • EXIT statement was added, so you can break loops early
  • Autocomplete menu now includes variable comments

v1.5.0: 27 October 2016

  • Support for TI AM1808 PRU code generation

v1.4.0: 12 June 2016

v1.3.0: 30 April 2016

v1.2.0: 15 February 2016

  • Simple CFC editor

v1.1.0: 14 February 2016

  • Array, struct, enum: typesystem, initializers
  • pointers: ADR, ^ dereference

v1.0.0

  • Proof of concept release

Author

Vladimir Sitnikov [email protected]

ide61131's People

Contributors

vlsi avatar

Watchers

 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.