Horodatage du laser cutter

Avatar de l’utilisateur
fabrice
Electrolab::Membre
Messages : 46
Enregistré le : 17 sept. 2017, 00:34
Contact :

Horodatage du laser cutter

Messagepar fabrice » 27 sept. 2018, 15:19

Je vais regarder comment on pourrait envoyer dans une base de données les temps d'utilisation : dans l'idéal une API REST sur un middleware Python (Falcon, SqlAlchemy)

* recompiler LaserWeb4 sous Linux et Windows
* hacker un script si c'est trop gallère

D'une manière générale, le monitoring des machines pourrait être intéressant quand on peut facilement récupérer des données : laser cutter, compte tour sur perceuse à colonne ...

Build

* 350 MB de node modules
* l'action de npm est toujours aussi mystique ...
* Le build plante de partout sous Linux -> https://github.com/LaserWeb/LaserWeb4/issues/516
Avatar de l’utilisateur
fabrice
Electrolab::Membre
Messages : 46
Enregistré le : 17 sept. 2017, 00:34
Contact :

Re: Horodatage du laser cutter

Messagepar fabrice » 27 sept. 2018, 22:12

Après info des dev, ça tourne sous ma Fedora Linux avec

npm install ...
npm run bundle-dev # dixit: prod is broken since a long time
npm start

Reste plus qu'a voir comment injecter de l'ajax sur une API REST dans le js ... et voir comment le bouzin tourne sous windows (monkey patching ...) possible que npm install soit plus laborieux sous windaube

p.s.: J'ai pas trouvé de codes compilé hormis :

./node_modules/buffertools/build/Release/obj.target/buffertools/buffertools.o

./node_modules/serialport/build/Release/obj.target/serialport/src/serialport.o
./node_modules/serialport/build/Release/obj.target/serialport/src/serialport_unix.o
./node_modules/serialport/build/Release/obj.target/serialport/src/serialport_poller.o

Évidement les nodeux utilisent l'extension .node pour les ELF .so ... grrrr!!!!
Avatar de l’utilisateur
fabrice
Electrolab::Membre
Messages : 46
Enregistré le : 17 sept. 2017, 00:34
Contact :

Re: Horodatage du laser cutter

Messagepar fabrice » 27 sept. 2018, 23:04

Après avoir regarder les sources, il ne fait aucun doute que https://fr.wikipedia.org/wiki/Rayon_de_Schwarzschild est a même de décrire la maintenabilité de la chose ...

La doc c'est le code, structuré à la web

How it run

Il y a deux tasks app et server : machine <- various -> server <- web socket -> frontend aka app <-> browser

  • "start-server": "node node_modules/lw.comm-server/server.js",
  • "start-app": "webpack-dev-server --progress --colors --open",
  • "start-prod": "webpack-dev-server -p --progress --colors --open",
  • "start": "npm-run-all -p -r start-app start-server",

https://github.com/mysticatea/npm-run-a ... run-all.md

Frontend Source

un grep -R Run src permet de localiser

src/components/com.js
export function runCommand(gcode) {
export function runJob(job) {

puis ces fichiers

src/components/jog.js
src/lib/lw.comm-client.js

Server

https://github.com/LaserWeb/lw.comm-server/wiki

code à la if if if else case ...

Il y a, semble il non documenté

config.jobOnStart = '';
config.jobOnFinish = '';
config.jobOnAbort = '';

exec via https://nodejs.org/api/child_process.html

SEMBLE ÊTRE UN BONNE ANGLE D’ATTAQUE : il ont prévu une sorte de plugin, le code est plus simple que le frontend

Par contre, aucune data n'est passé au user script.
Avatar de l’utilisateur
fabrice
Electrolab::Membre
Messages : 46
Enregistré le : 17 sept. 2017, 00:34
Contact :

Re: Horodatage du laser cutter

Messagepar fabrice » 27 sept. 2018, 23:11

Reste à déterminer la base de donnée / middleware

- un Pg dédié pour cela avec un frontend basic
- une app à la odoo ???
- monitoring à la Grafana et cie
- MQTT et cie

Retourner vers « Mecanique »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité