Ligral是一个基于文本的仿真语言,旨在替代Simulink进行仿真,通过与框图等效的文本语言描述仿真对象,并解释/编译而后求解。
Ligral项目的地址: https://gitee.com/junruoyu-zheng/ligral
LigralPy是专为Ligral语言打造的可视化仿真系统,基于Web技术搭建。由于服务端使用Python语言编写,且提供Python语言调用的接口,故名为LigralPy。
相比其他类型的系统仿真软件,LigralPy主要有以下优点:
本项目的开发者曾开发PyMiner项目,目的是建立一个开源的类Matlab程序。但最终我们发现,Matlab内置的算法才是最重要的价值所在。在一系列算法工具箱中,最为不可替代的功能当属Simulink,它被广泛用于控制系统仿真,在工业界、学术界有着几乎不可替代的地位。
因此,我们最终决定瞄准小切口,实现一个类似于Simulink功能、但代码上和其完全无关的开源软件。这个开源软件或许不能直接服务于工业界和实际生产,但可以用在教育教学方面——自然,也可以丰富我国开源软件的生态。
同为PyMiner核心开发者的 junruoyu-zheng 开发了基于C#
的Ligral,这样便有了核心算法程序。如果有一个用户友好的界面,便可以让更多的人来认识Ligral。这也是LigralPy项目启动的初衷。
以下的教程为一般的安装步骤,适用于所有平台。
在本节最后部分,我们还展示了基于docker的快速安装方式,如果电脑中装有docker,可以通过docker进行安装。
特别的,由于Ligral主程序依赖于.NET运行时,因此在MacOS/Linux上安装较为繁琐。由是,若您使用的电脑为MacOS/Linux,建议优先使用docker安装此仿真系统
首先,需要安装Python。如果你的电脑上还没有Python,可以戳这里下载。
以上的下载链接使用的是华为云的镜像,速度高于官网。
Python语言的安装过程网上已有很多,在这里由于篇幅所限,不在赘述。
Ligral发布在这里:
可以在这个仓库中下载最新版本的Ligral。
在你的电脑的终端中,执行如下命令:
python -m pip install LigralPy
如果你看到了Successfully installed ligralpy
这样的信息,说明安装成功。如果安装不成功且无法排除问题,请联系本项目开发者。
执行如下命令:
python -m LigralPy
会显示这样的信息:
INFO:LigralPy.server.chart_receiver:chart udp receiver started at ('127.0.0.1', 8784)
* Serving Flask app 'LigralPy.server.server' (lazy loading)
* Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
* Debug mode: off
INFO:werkzeug: * Running on http://127.0.0.1:5394 (Press CTRL+C to quit)
以上信息说明LigralPy的主服务已经启动。将信息中的链接http://127.0.0.1:5394
复制到浏览器中访问,即可打开仿真页面。
Docker主要适用于Mac OS
和Linux
电脑,或是开启WSL
的Windows
电脑。
docker pull registry.cn-beijing.aliyuncs.com/pyminer/ligralpy:v0.3.0
# 运行docker镜像,并将ligralpy容器中的5394端口,映射到电脑的8080端口。同时,将希望映射的文件夹映射到容器的/root/simulation文件夹。
docker run -it -p 8080:5394 -v {希望映射的文件夹}:/root/simulation registry.cn-beijing.aliyuncs.com/pyminer/ligralpy:v0.3.0 python3 -m LigralPy
随后可以使用浏览器访问**http://localhost:8080**(注意端口号是8080,而不是5394,这是由命令中`-p`参数指定的)
如果你想查看帮助文档,可以查看这里:用户文档
yarn install
yarn serve
yarn build
cd backend
pip install flask
python run.py
python build_web.py
python setup.py bdist_wheel
本项目涉及到的开源项目主要有:
0.3.0
0.2.1
0.2.0
in/out-port-variable
为true
的节点变更输入/输出端口的数量。0.1.1
0.1.0
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。