plc_t
所属分类:单片机开发
开发工具:Python
文件大小:0KB
下载次数:0
上传日期:2023-09-18 23:30:57
上 传 者:
sh-1993
说明: 可编程逻辑控制器t,,
(plc t,,)
文件列表:
CHANGELOG.rst (7329, 2023-11-09)
COPYING.md (4285, 2023-11-09)
INSTALL.rst (6051, 2023-11-09)
LICENSE (35148, 2023-11-09)
examples/ (0, 2023-11-09)
examples/default_plc.cfg (8868, 2023-11-09)
examples/example_pattern_12_channels.cfg (611, 2023-11-09)
examples/example_pattern_4_channels.cfg (498, 2023-11-09)
examples/example_setpoints.cfg (1812, 2023-11-09)
manual.rst (82077, 2023-11-09)
plc.py (378, 2023-11-09)
plc/ (0, 2023-11-09)
plc/__init__.py (881, 2023-11-09)
plc/clients/ (0, 2023-11-09)
plc/clients/__init__.py (33, 2023-11-09)
plc/clients/digital_controller.py (17037, 2023-11-09)
plc/clients/multi_purpose_controller_client.py (16686, 2023-11-09)
plc/plc.py (4215, 2023-11-09)
plc/plc_gui/ (0, 2023-11-09)
plc/plc_gui/__init__.py (869, 2023-11-09)
plc/plc_gui/base_controller.py (1205, 2023-11-09)
plc/plc_gui/class_rf_generator.py (22082, 2023-11-09)
plc/plc_gui/controller.py (1083, 2023-11-09)
plc/plc_gui/diagnostic_particles.py (25106, 2023-11-09)
plc/plc_gui/digital_controller.py (3066, 2023-11-09)
plc/plc_gui/electrode_motion.py (7084, 2023-11-09)
plc/plc_gui/electrode_motion_controller.py (7186, 2023-11-09)
plc/plc_gui/gas_system.py (18031, 2023-11-09)
plc/plc_gui/misc/ (0, 2023-11-09)
plc/plc_gui/misc/__init__.py (886, 2023-11-09)
plc/plc_gui/misc/except_notify.py (1788, 2023-11-09)
plc/plc_gui/misc/misc.py (1949, 2023-11-09)
plc/plc_gui/misc/splash.py (6217, 2023-11-09)
plc/plc_gui/multi_purpose_controller.py (4524, 2023-11-09)
plc/plc_gui/plc.py (29763, 2023-11-09)
plc/plc_gui/plcclientserverclass.py (13723, 2023-11-09)
plc/plc_gui/read_config_file.py (25049, 2023-11-09)
plc/plc_gui/rf_generator.py (25276, 2023-11-09)
... ...
# PLC - PlasmaLabControl (Python3)
PLC is a software package to control the experiment setup of Plasmalab.
This is a reborn in Python3.
## What's there and what we need:
What's there:
* many controlling and measuring boxes
(digital controller, camera, ...)
What we need:
* software component for every box (IO communication, logging)
* one software component for controlling (human interface)
What was there:
* stubs of software for some boxes
## Software Concept:
Many processes with threads communicating over TCP (socket communication)
* flexible
* every process can run on own cpu core (automatically or manually)
* threading prevents unnecessary blockings of the whole system
while IO communication
* every process can run on different boxes/computers
* small processes can go to own boxes in future
* heavy processes can get their own computers in future
* controlling interface (human interface) can run on separated location
(e. g. near the scientist and not near the experiment setup)
* living in the cloud, e. g.:
* experiment setup on the A300-ZERO-G (or ISS)
* logging somewhere in Bordeaux (or Garching)
* controlling from the Dune of Pyla (or Ringberg)
* iff running on one Linux system (computer):
* loopback interface is fast
* kernel can do the load sharing
## Implementation and Development:
* Python3
(at the moment also C++; as far as possible this will be changed in future)
* popular and suitable operating system: UNIX (Linux, MacOS)
## Human Interface:
* GUI
* Tkinter (Tcl/Tk)
* mostly platform indepent
(at the moment some controlling parts are integrated;
and therefore only complete funtionable on POSIX systems;
this will be changend in near future)
* config files
* style of RFC 822
* mostly human readable
* platform indepent
* Batch Controlling:
* list of setpoints in a config file, which can be loaded and set in the GUI
## Server Components:
For every controlling and measuring box we write some components:
(at the moment heavy development)
* server program
* IO to the device
* logging
* socket communication for controlling
* client program (for debugging)
* human interface (at the moment only GUI)
* socket communication with the server program
* integration of a useful API in the human interface GUI
## Other Parts:
plc contains some extra tools for viewing/analysing the measurements.
For example:
* rawmovieviewer.py
(player for the img-files (PAM format))
* quick viewing of the measured/recorded movies
* rawmovies2recordings.py
(converts img-files (PAM format) to zip-archives with png graphics)
* img-files in the PAM format are large and structured to 1 GB files
* resulting zip-archives are smaller and
structured in recordings (parabolas)
* plc_viewer.py
(viewer of the movies and other measurements)
* assignment of the frames to other measurements
## Copyright + License
===================
Author: Daniel Mohr.
License: GNU GENERAL PUBLIC LICENSE, Version 3, 29 June 2007
Copyright (C) 2012, 2013, 2014 Daniel Mohr and PlasmaLab (FKZ 50WP0700 and FKZ 50WM1401) and Max-Planck-Institut fuer extraterrestrische Physik, Giessenbachstrasse, D-85740 Garching and Deutsches Zentrum fuer Luft- und Raumfahrt e. V., D-51170 Koeln
Copyright (C) 2023 Perevoshchikov Egor
近期下载者:
相关文件:
收藏者: