Skip to content

anzodev/COMonitoring2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 

Repository files navigation

COMonitoring2

Monitoring system of signal level that uses programmable modules and Python 3.5+. Current app has a big bunch of changes than previous version, so it was the reason to create new repository. Main features:

  • system decentralization
  • module’s connect/disconnect dynamicly
  • data integrity checking
  • color creation
  • chart creation

Hardware

Pololu Wixel

Pololu Wixel

Software

  1. Install Python3.5+. Some Linux distributions have installed Python3.5 by default, so you can use it to run the app.

  2. Be sure that pip is installed. If you are using Linux distribution and default Python interpreter, install pip by (for Ubuntu):

sudo apt-get install python3-pip
  1. You should use virtualenv for your projects, but also you can install packages by command (on Linux you can get permission error, use "--user" flag to install packages):
pip3 install pyserial flask-socketio --user

Loading Firmware

To use Pololu Wixel module you need install the firmware:

  1. Download and install driver.
  2. Download Wixel SDK.
  3. Use this manual to load firmware.
  4. Load the firmware into Pololu Wixel.

For additional information see manufacturer User’s Guide.

Run

  1. Download app folder.
  2. Edit config file if you need. All numeric values are ports that use by the app. You can change all values, but ports value ans secret key’s value must be same on all computers where app works.
  3. Run app.py
python3 app.py
  1. Connect modules. Linux users have to be in the "dialout" group:
sudo usermod -a -G dialout $USER

If permission error doesn’t disappeare try to use:

sudo chmod 775 /dev -R

You can see simple app’s interface in Terminal

App interface

  • server address — use it to connect to the system from browser
  • system nodes — addresses of another connected computers
  • host — your IP address
  • name — current name of your computer in the monitoring system
  • os — information about operating system
  • modules — list of connected modules to the current computer (serial name, HEX color, chart type, conection status)

Controller

Main feature of the current app version is system’s decentralization. There isn’t server’s file, only main app. Now server is the separete process that works in the parallel thread. App work algorithm:

App’s algorithm

View

Web interface

Current interface has new structure. There are modules list of the active client on the top and clients list on the bottom. You can switch client and his modules appear on the top. Interface doesn’t have "Pause" button because you can disconnect modules dynamicly.

Web interface

Module’s information:

  • port name
  • serial name
  • ratio between module’s packages that were accepted by app and all packages that were sent by module. It is usefull to know, if you want to get the chart of average values of all module’s packages, because chart calculated by all accepted packages.
  • work time

Web interface

New feature, you can choose different colors and set chart’s type for each modules. Chart types:

  • 1 — values of the last accepted package
  • 10 — average values of last 10 accepted packages
  • 100 — average values of last 100 accepted packages
  • ALL — average values of all accepted packages

Licenses

The source code are licensed under the GNU GPLv3. The schematics are licensed under the CC-BY-SA 3.0.

Authors

Developer — Ivan Bogachuk
Manager — Vladimir Sokolov

About

Pololu Wixel Spectrum Analysis

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published