|
@@ -1,610 +1,424 @@
|
|
|
-#include <BlynkSimpleEsp8266.h>
|
|
|
|
|
-#include <TimeLib.h>
|
|
|
|
|
-#include <WidgetRTC.h>
|
|
|
|
|
-
|
|
|
|
|
-//#define AQUAGRA
|
|
|
|
|
-//#define AQUAZOA
|
|
|
|
|
-
|
|
|
|
|
-#ifdef AQUAGRA
|
|
|
|
|
- char auth[] = "_Fw7V6o4bPAovQ1idbetFcith6LmMnyh"; //220L
|
|
|
|
|
-#elif AQUAZOA
|
|
|
|
|
- char auth[] = "oObIhJsLplCUAhCBfwyvpBF_n_N8oqJv"; //70L
|
|
|
|
|
-#endif
|
|
|
|
|
-
|
|
|
|
|
-char ssid[] = "Livebox-7C2C";
|
|
|
|
|
-char pass[] = "566C61F61F9C925C9F3D7D79E6";
|
|
|
|
|
-
|
|
|
|
|
-WidgetRTC rtc;
|
|
|
|
|
-BlynkTimer timer;
|
|
|
|
|
-WidgetTerminal terminal(V60);
|
|
|
|
|
-
|
|
|
|
|
-//************************************************************************
|
|
|
|
|
-// Variable Global perso
|
|
|
|
|
-//************************************************************************
|
|
|
|
|
-#ifdef AQUAGRA
|
|
|
|
|
- #define RESERVE 1200
|
|
|
|
|
- #define LITRE 220
|
|
|
|
|
- #define FACTEURML 635 //Temps d'allumage de la pompe en ms pour distribuer 1ml
|
|
|
|
|
- #define RESERVEMIN 100
|
|
|
|
|
- #define STARTCa 16
|
|
|
|
|
- #define STARTKh 30
|
|
|
|
|
- #define STARTMg 7
|
|
|
|
|
-#elif AQUAZOA
|
|
|
|
|
- #define RESERVE 450
|
|
|
|
|
- #define LITRE 70
|
|
|
|
|
- #define FACTEURML 200//todo //Temps d'allumage de la pompe en ms pour distribuer 1ml
|
|
|
|
|
- #define RESERVEMIN 50
|
|
|
|
|
- #define STARTCa 16
|
|
|
|
|
- #define STARTKh 30
|
|
|
|
|
- #define STARTMg 7
|
|
|
|
|
-#endif
|
|
|
|
|
-
|
|
|
|
|
-#define POMPE0 0
|
|
|
|
|
-#define POMPE1 1
|
|
|
|
|
-#define POMPE2 2
|
|
|
|
|
-#define POMPE3 3
|
|
|
|
|
-
|
|
|
|
|
-//nombre de ml a distribuer pour remonter de +1 (mg ou kh) par litre d'eau
|
|
|
|
|
-#define FACTEUR0 0.0057 //FACTEUR CA
|
|
|
|
|
-#define FACTEUR1 0.36 //0.36ml/L = +1KH
|
|
|
|
|
-#define FACTEUR3 0.02 //FACTEUR MG
|
|
|
|
|
-
|
|
|
|
|
-const int PINPOMPE0 = 16;
|
|
|
|
|
-const int PINPOMPE1 = 5;
|
|
|
|
|
-const int PINPOMPE2 = 4;
|
|
|
|
|
-const int PINPOMPE3 = 0;
|
|
|
|
|
-
|
|
|
|
|
-float Mesure0, Mesure1, Mesure2, Mesure3;
|
|
|
|
|
-float ML0, ML1, ML2, ML3 ;
|
|
|
|
|
-float Cible0, Cible1, Cible2, Cible3 ;
|
|
|
|
|
-bool Auto0, Auto1, Auto2, Auto3 ;
|
|
|
|
|
-float Reserve0, Reserve1, Reserve2, Reserve3 ;
|
|
|
|
|
-float MLForce0, MLForce1, MLForce2, MLForce3 ;
|
|
|
|
|
-int dist;
|
|
|
|
|
-
|
|
|
|
|
-//************************************************************************
|
|
|
|
|
-// Fonction Seul
|
|
|
|
|
-//************************************************************************
|
|
|
|
|
-void Ft_Timer() {
|
|
|
|
|
- int Hmin = hour() * 60 + minute();
|
|
|
|
|
- switch(Hmin){
|
|
|
|
|
- case 0: //Calcium
|
|
|
|
|
- dist=0;
|
|
|
|
|
- AutoDistribue0(ML0);
|
|
|
|
|
- break;
|
|
|
|
|
- case 360: //Calcium
|
|
|
|
|
- dist=1;
|
|
|
|
|
- AutoDistribue0(ML0);
|
|
|
|
|
- break;
|
|
|
|
|
- case 720: //Calcium
|
|
|
|
|
- dist=2;
|
|
|
|
|
- AutoDistribue0(ML0);
|
|
|
|
|
- break;
|
|
|
|
|
- case 1080: //Calcium
|
|
|
|
|
- dist=3;
|
|
|
|
|
- AutoDistribue0(ML0);
|
|
|
|
|
- break;
|
|
|
|
|
- case 90: //KH
|
|
|
|
|
- dist=0;
|
|
|
|
|
- AutoDistribue1(ML1);
|
|
|
|
|
- break;
|
|
|
|
|
- case 450: //KH
|
|
|
|
|
- dist=1;
|
|
|
|
|
- AutoDistribue1(ML1);
|
|
|
|
|
- break;
|
|
|
|
|
- case 810: //KH
|
|
|
|
|
- dist=2;
|
|
|
|
|
- AutoDistribue1(ML1);
|
|
|
|
|
- break;
|
|
|
|
|
- case 1170: //KH
|
|
|
|
|
- dist=3;
|
|
|
|
|
- AutoDistribue1(ML1);
|
|
|
|
|
- break;
|
|
|
|
|
- case 180: //mineral
|
|
|
|
|
- dist=0;
|
|
|
|
|
- AutoDistribue2(ML2);
|
|
|
|
|
- break;
|
|
|
|
|
- case 540: //mineral
|
|
|
|
|
- dist=1;
|
|
|
|
|
- AutoDistribue2(ML2);
|
|
|
|
|
- break;
|
|
|
|
|
- case 900: //mineral
|
|
|
|
|
- dist=2;
|
|
|
|
|
- AutoDistribue2(ML2);
|
|
|
|
|
- break;
|
|
|
|
|
- case 1260: //mineral
|
|
|
|
|
- dist=3;
|
|
|
|
|
- AutoDistribue2(ML2);
|
|
|
|
|
- break;
|
|
|
|
|
- case 270://mg
|
|
|
|
|
- dist=0;
|
|
|
|
|
- AutoDistribue3(ML3);
|
|
|
|
|
- break;
|
|
|
|
|
- case 630://mg
|
|
|
|
|
- dist=1;
|
|
|
|
|
- AutoDistribue3(ML3);
|
|
|
|
|
- break;
|
|
|
|
|
- case 990://mg
|
|
|
|
|
- dist=2;
|
|
|
|
|
- AutoDistribue3(ML3);
|
|
|
|
|
- break;
|
|
|
|
|
- case 1350://mg
|
|
|
|
|
- dist=3;
|
|
|
|
|
- AutoDistribue3(ML3);
|
|
|
|
|
- break;
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-BLYNK_CONNECTED() {
|
|
|
|
|
- char message[30];
|
|
|
|
|
- sprintf(message, "\nnew Connection\n");
|
|
|
|
|
- terminal.print(message);
|
|
|
|
|
- terminal.flush();
|
|
|
|
|
-
|
|
|
|
|
- rtc.begin();
|
|
|
|
|
-
|
|
|
|
|
- Blynk.syncAll();
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-BLYNK_WRITE(V60){
|
|
|
|
|
- if (String("Ca") == param.asStr())
|
|
|
|
|
- Blynk.virtualWrite(V3, STARTCa);
|
|
|
|
|
- if (String("Kh") == param.asStr())
|
|
|
|
|
- Blynk.virtualWrite(V13, STARTKh);
|
|
|
|
|
- if (String("Mi") == param.asStr())
|
|
|
|
|
- Blynk.virtualWrite(V23, (ML0+ML1)/2);
|
|
|
|
|
- if (String("Mg") == param.asStr())
|
|
|
|
|
- Blynk.virtualWrite(V33, STARTMg);
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
-void setup(){
|
|
|
|
|
-
|
|
|
|
|
- //Pin Setup
|
|
|
|
|
- pinMode(PINPOMPE0, OUTPUT);
|
|
|
|
|
- pinMode(PINPOMPE1, OUTPUT);
|
|
|
|
|
- pinMode(PINPOMPE2, OUTPUT);
|
|
|
|
|
- pinMode(PINPOMPE3, OUTPUT);
|
|
|
|
|
-
|
|
|
|
|
- digitalWrite(PINPOMPE0, HIGH);
|
|
|
|
|
- digitalWrite(PINPOMPE1, HIGH);
|
|
|
|
|
- digitalWrite(PINPOMPE2, HIGH);
|
|
|
|
|
- digitalWrite(PINPOMPE3, HIGH);
|
|
|
|
|
-
|
|
|
|
|
- Blynk.begin(auth, ssid, pass, IPAddress(192, 168, 1, 18), 8081);
|
|
|
|
|
-
|
|
|
|
|
- setSyncInterval(10 * 60); // Sync interval in seconds (10 minutes)
|
|
|
|
|
-
|
|
|
|
|
- timer.setInterval(1000L*60, Ft_Timer);
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-void loop(){
|
|
|
|
|
- Blynk.run();
|
|
|
|
|
- timer.run();
|
|
|
|
|
-}
|
|
|
|
|
-//************************************************************************
|
|
|
|
|
-// Fonction Calcium
|
|
|
|
|
-//************************************************************************
|
|
|
|
|
-
|
|
|
|
|
-void AutoDistribue0(float ml){
|
|
|
|
|
-
|
|
|
|
|
- if (Auto0) {
|
|
|
|
|
- if(((ML0/4)*FACTEURML)>(1000*4)){
|
|
|
|
|
- }
|
|
|
|
|
- else if((((ML0/2)*FACTEURML)>(1000*2))&(dist==0|dist==2)){
|
|
|
|
|
- Active0(ML0/2);
|
|
|
|
|
- }
|
|
|
|
|
- else if (dist==0){
|
|
|
|
|
- Active0(ML0);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- else{
|
|
|
|
|
- Blynk.notify("Calcium est Arreter");
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-void Active0(float ml) {
|
|
|
|
|
- digitalWrite(PINPOMPE0, LOW);
|
|
|
|
|
- delay(FACTEURML * ml);
|
|
|
|
|
- digitalWrite(PINPOMPE0, HIGH);
|
|
|
|
|
- Reserve0=Reserve0-ml;
|
|
|
|
|
- Blynk.virtualWrite(V4, Reserve0);
|
|
|
|
|
- char message[30];
|
|
|
|
|
- sprintf(message, "Distribution %.1fml de Calcium a %d:%d\n", ml,hour(),minute());
|
|
|
|
|
- terminal.print(message);
|
|
|
|
|
- terminal.flush();
|
|
|
|
|
- if(Reserve0<RESERVEMIN)
|
|
|
|
|
- Blynk.notify("Penser a remettre du Calcium");
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-//Mesure
|
|
|
|
|
-BLYNK_WRITE(V0) {
|
|
|
|
|
- if(Mesure0==0){//Si nouvelle connection on recupere juste la valeur enregistrer sur le server
|
|
|
|
|
- Mesure0 = param.asFloat();
|
|
|
|
|
- return;
|
|
|
|
|
- }
|
|
|
|
|
- Mesure0 = param.asFloat();
|
|
|
|
|
-
|
|
|
|
|
- ML0 = ML0 + (((ML0/Mesure0)* Cible0 - ML0)/4.0);
|
|
|
|
|
- MLForce0 = (Cible0-Mesure0)*FACTEUR0*LITRE;
|
|
|
|
|
-
|
|
|
|
|
- if(MLForce0<0)
|
|
|
|
|
- MLForce0=0;
|
|
|
|
|
-
|
|
|
|
|
- ML2 = (ML1+ML0)/2.0;
|
|
|
|
|
- Blynk.virtualWrite(V23, ML2);
|
|
|
|
|
- Blynk.virtualWrite(V3, ML0);
|
|
|
|
|
- Blynk.virtualWrite(V7, MLForce0);
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-//Cible
|
|
|
|
|
-BLYNK_WRITE(V1) {
|
|
|
|
|
- if(Cible0==0){//Si nouvelle connection on recupere juste la valeur enregistrer sur le server
|
|
|
|
|
- Cible0 = param.asFloat();
|
|
|
|
|
- return;
|
|
|
|
|
- }
|
|
|
|
|
- Cible0 = param.asFloat();
|
|
|
|
|
- ML0 = ML0 +(((ML0/Mesure0)* Cible0- ML0)/4.0);
|
|
|
|
|
- ML2 = (ML1+ML0)/2.0;
|
|
|
|
|
-
|
|
|
|
|
- Blynk.virtualWrite(V23, ML2);
|
|
|
|
|
- Blynk.virtualWrite(V3, ML0);
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-//En route
|
|
|
|
|
-BLYNK_WRITE(V2) {
|
|
|
|
|
- if ( param.asInt()){
|
|
|
|
|
- Auto0 = true;
|
|
|
|
|
- }
|
|
|
|
|
- else{
|
|
|
|
|
- Auto0 = false;
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-BLYNK_WRITE(V3){
|
|
|
|
|
- ML0=param.asFloat();
|
|
|
|
|
- Blynk.virtualWrite(V3, ML0);
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-BLYNK_WRITE(V4){
|
|
|
|
|
- Reserve0=param.asFloat();
|
|
|
|
|
- Blynk.virtualWrite(V4, Reserve0);
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
-//RAZ Reserve
|
|
|
|
|
-BLYNK_WRITE(V5){
|
|
|
|
|
- if(param.asInt()){
|
|
|
|
|
- Reserve0=RESERVE;
|
|
|
|
|
- Blynk.virtualWrite(V4, Reserve0);
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-//Forcé4
|
|
|
|
|
-BLYNK_WRITE(V6){
|
|
|
|
|
- if(param.asInt()){
|
|
|
|
|
- Active0(4.0);
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-//NB/Forcé
|
|
|
|
|
-BLYNK_WRITE(V7){
|
|
|
|
|
- MLForce0=param.asFloat();
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-//Forcé
|
|
|
|
|
-BLYNK_WRITE(V8){
|
|
|
|
|
- if ( param.asInt()){
|
|
|
|
|
- Active0(MLForce0);
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
-//************************************************************************
|
|
|
|
|
-// Fonction KH
|
|
|
|
|
-//************************************************************************
|
|
|
|
|
-
|
|
|
|
|
-void AutoDistribue1(float ml){
|
|
|
|
|
- if (Auto1) {
|
|
|
|
|
- if(((ML1/4)*FACTEURML)>(1000*4)){
|
|
|
|
|
- }
|
|
|
|
|
- else if((((ML1/2)*FACTEURML)>(1000*2))&(dist==0|dist==2)){
|
|
|
|
|
- Active1(ML1/2);
|
|
|
|
|
- }
|
|
|
|
|
- else if (dist==0){
|
|
|
|
|
- Active1(ML1);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- else{
|
|
|
|
|
- Blynk.notify("KH est Arreter");
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-void Active1(float ml) {
|
|
|
|
|
- digitalWrite(PINPOMPE1, LOW);
|
|
|
|
|
- delay(FACTEURML * ml);
|
|
|
|
|
- digitalWrite(PINPOMPE1, HIGH);
|
|
|
|
|
- Reserve1=Reserve1-ml;
|
|
|
|
|
- Blynk.virtualWrite(V14, Reserve1);
|
|
|
|
|
- char message[30];
|
|
|
|
|
- sprintf(message, "Distribution %.1fml de KH a %d:%d\n", ml,hour(),minute());
|
|
|
|
|
- terminal.print(message);
|
|
|
|
|
- terminal.flush();
|
|
|
|
|
- if(Reserve1<RESERVEMIN)
|
|
|
|
|
- Blynk.notify("Penser a remettre du KH");
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-//Mesure
|
|
|
|
|
-BLYNK_WRITE(V10) {
|
|
|
|
|
- if(Mesure1==0){//Si nouvelle connection on recupere juste la valeur enregistrer sur le server
|
|
|
|
|
- Mesure1 = param.asFloat();
|
|
|
|
|
- return;
|
|
|
|
|
- }
|
|
|
|
|
- Mesure1 = param.asFloat();
|
|
|
|
|
-
|
|
|
|
|
- ML1 = ML1 + (((ML1/Mesure1)* Cible1 - ML1)/4.0);
|
|
|
|
|
- MLForce1 = (Cible1-Mesure1)*FACTEUR1*LITRE;
|
|
|
|
|
- if(MLForce1<0)
|
|
|
|
|
- MLForce1=0;
|
|
|
|
|
-
|
|
|
|
|
- ML2 = (ML1+ML0)/2.0;
|
|
|
|
|
- Blynk.virtualWrite(V23, ML2);
|
|
|
|
|
- Blynk.virtualWrite(V13, ML1);
|
|
|
|
|
- Blynk.virtualWrite(V17, MLForce1);
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-//Cible
|
|
|
|
|
-BLYNK_WRITE(V11) {
|
|
|
|
|
- if(Cible1==0){//Si nouvelle connection on recupere juste la valeur enregistrer sur le server
|
|
|
|
|
- Cible1 = param.asFloat();
|
|
|
|
|
- return;
|
|
|
|
|
- }
|
|
|
|
|
- Cible1 = param.asFloat();
|
|
|
|
|
- ML1 = ML1 +(((ML1/Mesure1) * Cible1- ML1)/4.0);
|
|
|
|
|
-
|
|
|
|
|
- ML2 = (ML0+ML1)/2.0;
|
|
|
|
|
-
|
|
|
|
|
- Blynk.virtualWrite(V23, ML2);
|
|
|
|
|
- Blynk.virtualWrite(V13, ML1);
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-//En route
|
|
|
|
|
-BLYNK_WRITE(V12) {
|
|
|
|
|
- if ( param.asInt()){
|
|
|
|
|
- Auto1 = true;
|
|
|
|
|
- }
|
|
|
|
|
- else{
|
|
|
|
|
- Auto1 = false;
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-BLYNK_WRITE(V13){
|
|
|
|
|
- ML1=param.asFloat();
|
|
|
|
|
- Blynk.virtualWrite(V13, ML1);
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-BLYNK_WRITE(V14){
|
|
|
|
|
- Reserve1=param.asFloat();
|
|
|
|
|
- Blynk.virtualWrite(V14, Reserve1);
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
-//RAZ Reserve
|
|
|
|
|
-BLYNK_WRITE(V15){
|
|
|
|
|
- if(param.asInt()){
|
|
|
|
|
- Reserve1=RESERVE;
|
|
|
|
|
- Blynk.virtualWrite(V14, Reserve1);
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-//Forcé4
|
|
|
|
|
-BLYNK_WRITE(V16){
|
|
|
|
|
- if(param.asInt()){
|
|
|
|
|
- Active1(4.0);
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-//NB/Forcé
|
|
|
|
|
-BLYNK_WRITE(V17){
|
|
|
|
|
- MLForce1=param.asFloat();
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-//Forcé
|
|
|
|
|
-BLYNK_WRITE(V18){
|
|
|
|
|
- if ( param.asInt()){
|
|
|
|
|
- Active1(MLForce1);
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-//************************************************************************
|
|
|
|
|
-// Fonction Mineral
|
|
|
|
|
-//************************************************************************
|
|
|
|
|
-
|
|
|
|
|
-void AutoDistribue2(float ml){
|
|
|
|
|
- if (Auto2) {
|
|
|
|
|
- if(((ML2/4)*FACTEURML)>(1000*4)){
|
|
|
|
|
- }
|
|
|
|
|
- else if((((ML2/2)*FACTEURML)>(1000*2))&(dist==0|dist==2)){
|
|
|
|
|
- Active2(ML2/2);
|
|
|
|
|
- }
|
|
|
|
|
- else if (dist==0){
|
|
|
|
|
- Active2(ML2);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- else{
|
|
|
|
|
- Blynk.notify("Mineral est Arreter");
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-void Active2(float ml) {
|
|
|
|
|
- digitalWrite(PINPOMPE2, LOW);
|
|
|
|
|
- delay(FACTEURML * ml);
|
|
|
|
|
- digitalWrite(PINPOMPE2, HIGH);
|
|
|
|
|
- Reserve2=Reserve2-ml;
|
|
|
|
|
- Blynk.virtualWrite(V24, Reserve2);
|
|
|
|
|
- char message[30];
|
|
|
|
|
- sprintf(message, "Distribution %.1fml de Mineral a %d:%d\n", ml,hour(),minute());
|
|
|
|
|
- terminal.print(message);
|
|
|
|
|
- terminal.flush();
|
|
|
|
|
- if(Reserve2<RESERVEMIN)
|
|
|
|
|
- Blynk.notify("Penser a remettre du Mineral");
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-//En route
|
|
|
|
|
-BLYNK_WRITE(V22) {
|
|
|
|
|
- if ( param.asInt()){
|
|
|
|
|
- Auto2 = true;
|
|
|
|
|
- }
|
|
|
|
|
- else{
|
|
|
|
|
- Auto2 = false;
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-BLYNK_WRITE(V23){
|
|
|
|
|
- ML2=param.asFloat();
|
|
|
|
|
- Blynk.virtualWrite(V23, ML2);
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-BLYNK_WRITE(V24){
|
|
|
|
|
- Reserve2=param.asFloat();
|
|
|
|
|
- Blynk.virtualWrite(V24, Reserve2);
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
-//RAZ Reserve
|
|
|
|
|
-BLYNK_WRITE(V25){
|
|
|
|
|
- if(param.asInt()){
|
|
|
|
|
- Reserve2=RESERVE;
|
|
|
|
|
- Blynk.virtualWrite(V24, Reserve2);
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-//Forcé4
|
|
|
|
|
-BLYNK_WRITE(V26){
|
|
|
|
|
- if(param.asInt()){
|
|
|
|
|
- Active2(4.0);
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-//NB/Forcé
|
|
|
|
|
-BLYNK_WRITE(V27){
|
|
|
|
|
- MLForce2=param.asFloat();
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-//Forcé
|
|
|
|
|
-BLYNK_WRITE(V28){
|
|
|
|
|
- if ( param.asInt()){
|
|
|
|
|
- Active2(MLForce2);
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-//************************************************************************
|
|
|
|
|
-// Fonction Magnesium
|
|
|
|
|
-//************************************************************************
|
|
|
|
|
-
|
|
|
|
|
-void AutoDistribue3(float ml){
|
|
|
|
|
- if (Auto3) {
|
|
|
|
|
- if(((ML3/4)*FACTEURML)>(1000*4)){
|
|
|
|
|
- }
|
|
|
|
|
- else if((((ML3/2)*FACTEURML)>(1000*2))&(dist==0|dist==2)){
|
|
|
|
|
- Active3(ML3/2);
|
|
|
|
|
- }
|
|
|
|
|
- else if (dist==0){
|
|
|
|
|
- Active3(ML3);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- else{
|
|
|
|
|
- Blynk.notify("Magnesium est Arreter");
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-void Active3(float ml) {
|
|
|
|
|
- digitalWrite(PINPOMPE3, LOW);
|
|
|
|
|
- delay(FACTEURML * ml);
|
|
|
|
|
- digitalWrite(PINPOMPE3, HIGH);
|
|
|
|
|
- Reserve3=Reserve3-ml;
|
|
|
|
|
- Blynk.virtualWrite(V34, Reserve3);
|
|
|
|
|
- char message[30];
|
|
|
|
|
- sprintf(message, "Distribution %.1fml de Magnesium a %d:%d\n", ml,hour(),minute());
|
|
|
|
|
- terminal.print(message);
|
|
|
|
|
- terminal.flush();
|
|
|
|
|
- if(Reserve3<RESERVEMIN)
|
|
|
|
|
- Blynk.notify("Penser a remettre du Magnesium");
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-//Mesure
|
|
|
|
|
-BLYNK_WRITE(V30) {
|
|
|
|
|
- if(Mesure3==0){//Si nouvelle connection on recupere juste la valeur enregistrer sur le server
|
|
|
|
|
- Mesure3 = param.asFloat();
|
|
|
|
|
- return;
|
|
|
|
|
- }
|
|
|
|
|
- Mesure3 = param.asFloat();
|
|
|
|
|
- ML3 = ML3 + (((ML3/Mesure3)* Cible3 - ML3)/4.0);
|
|
|
|
|
- MLForce3 = (Cible3-Mesure3)*FACTEUR3*LITRE;
|
|
|
|
|
- if(MLForce3<0)
|
|
|
|
|
- MLForce3=0;
|
|
|
|
|
-
|
|
|
|
|
- Blynk.virtualWrite(V33, ML3);
|
|
|
|
|
- Blynk.virtualWrite(V37, MLForce3);
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-//Cible
|
|
|
|
|
-BLYNK_WRITE(V31) {
|
|
|
|
|
- if(Cible3==0){//Si nouvelle connection on recupere juste la valeur enregistrer sur le server
|
|
|
|
|
- Cible3 = param.asFloat();
|
|
|
|
|
- return;
|
|
|
|
|
- }
|
|
|
|
|
- Cible3 = param.asFloat();
|
|
|
|
|
- ML3 = ML3 +(((ML3/Mesure3)* Cible3- ML3)/4.0);
|
|
|
|
|
- Blynk.virtualWrite(V23, ML2);
|
|
|
|
|
- Blynk.virtualWrite(V33, ML3);
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-//En route
|
|
|
|
|
-BLYNK_WRITE(V32) {
|
|
|
|
|
- if ( param.asInt()){
|
|
|
|
|
- Auto3 = true;
|
|
|
|
|
- }
|
|
|
|
|
- else{
|
|
|
|
|
- Auto3 = false;
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-BLYNK_WRITE(V33){
|
|
|
|
|
- ML3=param.asFloat();
|
|
|
|
|
- Blynk.virtualWrite(V33, ML3);
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-BLYNK_WRITE(V34){
|
|
|
|
|
- Reserve3=param.asFloat();
|
|
|
|
|
- Blynk.virtualWrite(V34, Reserve3);
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
-//RAZ Reserve
|
|
|
|
|
-BLYNK_WRITE(V35){
|
|
|
|
|
- if(param.asInt()){
|
|
|
|
|
- Reserve3=RESERVE;
|
|
|
|
|
- Blynk.virtualWrite(V34, Reserve3);
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-//Forcé4
|
|
|
|
|
-BLYNK_WRITE(V36){
|
|
|
|
|
- if(param.asInt()){
|
|
|
|
|
- Active3(4.0);
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-//NB/Forcé
|
|
|
|
|
-BLYNK_WRITE(V37){
|
|
|
|
|
- MLForce3=param.asFloat();
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-//Forcé
|
|
|
|
|
-BLYNK_WRITE(V38){
|
|
|
|
|
- if ( param.asInt()){
|
|
|
|
|
- Active3(MLForce3);
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|
|
|
|
|
+ E704.936
|
|
|
|
|
+G1 X203.128 Y152.398 E704.96501
|
|
|
|
|
+G1 X203.99 Y152.51 E704.99392
|
|
|
|
|
+G1 X204.857 Y152.405 E705.02297
|
|
|
|
|
+G1 X205.672 Y152.086 E705.05208
|
|
|
|
|
+G1 X206.383 Y151.578 E705.08114
|
|
|
|
|
+G1 X206.944 Y150.91 E705.11015
|
|
|
|
|
+G1 X207.325 Y150.124 E705.13921
|
|
|
|
|
+G1 X207.502 Y149.252 E705.1688
|
|
|
|
|
+G1 X207.431 Y148.246 E705.20234
|
|
|
|
|
+G1 X207.128 Y147.403 E705.23214
|
|
|
|
|
+G1 X206.634 Y146.684 E705.26115
|
|
|
|
|
+G1 X205.984 Y146.104 E705.29013
|
|
|
|
|
+G1 X205.205 Y145.703 E705.31927
|
|
|
|
|
+G1 X204.552 Y145.553 E705.34155
|
|
|
|
|
+G1 X204.36 Y145.509 E705.3481
|
|
|
|
|
+G1 X204.229 Y145.511 E705.35246
|
|
|
|
|
+G1 X203.776 Y145.52 E705.36753
|
|
|
|
|
+G1 X204.224 Y145.278 E705.37344
|
|
|
|
|
+G1 X204.249 Y145.267
|
|
|
|
|
+G1 X204.428 Y145.185 E705.37895
|
|
|
|
|
+G1 X204.708 Y145.057 E705.38919
|
|
|
|
|
+G1 X205.413 Y144.801 E705.41414
|
|
|
|
|
+G1 X205.893 Y144.662 E705.43076
|
|
|
|
|
+G1 X206.643 Y144.511 E705.4562
|
|
|
|
|
+G1 X207.146 Y144.442 E705.47309
|
|
|
|
|
+G1 X207.693 Y144.41 E705.49131
|
|
|
|
|
+G1 X208.394 Y144.388 E705.51464
|
|
|
|
|
+G0 F7200 X200.679 Y147.17
|
|
|
|
|
+G0 X198.6 Y153.628
|
|
|
|
|
+G0 X21.39 Y153.628
|
|
|
|
|
+G0 X20.611 Y153.395
|
|
|
|
|
+G1 F3600 X20.612 Y153.396 E705.51469
|
|
|
|
|
+G1 X20.616 Y153.6 E705.52147
|
|
|
|
|
+G1 X20.412 Y153.6 E705.52584
|
|
|
|
|
+G1 X20.411 Y153.6 E705.52587
|
|
|
|
|
+G1 X11.4 Y153.6 E705.82558
|
|
|
|
|
+G1 X11.4 Y144.583 E706.12549
|
|
|
|
|
+G1 X11.4 Y144.582 E706.12552
|
|
|
|
|
+G1 X11.4 Y144.374 E706.13244
|
|
|
|
|
+G1 X11.608 Y144.383 E706.13686
|
|
|
|
|
+G1 X12.727 Y144.435 E706.17412
|
|
|
|
|
+G1 X13.264 Y144.496 E706.1921
|
|
|
|
|
+G1 X13.979 Y144.635 E706.21632
|
|
|
|
|
+G1 X14.506 Y144.775 E706.23446
|
|
|
|
|
+G1 X15.173 Y145.011 E706.25799
|
|
|
|
|
+G1 X15.557 Y145.176 E706.27189
|
|
|
|
|
+G1 X15.622 Y145.203 E706.27423
|
|
|
|
|
+G1 X15.687 Y145.231 E706.27659
|
|
|
|
|
+G1 X16.216 Y145.512 E706.29651
|
|
|
|
|
+G1 X15.693 Y145.522 E706.30242
|
|
|
|
|
+G1 X15.485 Y145.526 E706.30843
|
|
|
|
|
+G1 X15.417 Y145.545 E706.31064
|
|
|
|
|
+G1 X14.643 Y145.761 E706.33737
|
|
|
|
|
+G1 X13.886 Y146.196 E706.36641
|
|
|
|
|
+G1 X13.26 Y146.805 E706.39545
|
|
|
|
|
+G1 X12.804 Y147.551 E706.42453
|
|
|
|
|
+G1 X12.545 Y148.382 E706.45348
|
|
|
|
|
+G1 X12.498 Y149.254 E706.48253
|
|
|
|
|
+G1 X12.671 Y150.112 E706.51164
|
|
|
|
|
+G1 X13.047 Y150.898 E706.54062
|
|
|
|
|
+G1 X13.606 Y151.569 E706.56967
|
|
|
|
|
+G1 X14.316 Y152.08 E706.59876
|
|
|
|
|
+G1 X15.128 Y152.398 E706.62777
|
|
|
|
|
+G1 X15.99 Y152.51 E706.65668
|
|
|
|
|
+G1 X16.857 Y152.405 E706.68573
|
|
|
|
|
+G1 X17.672 Y152.086 E706.71483
|
|
|
|
|
+G1 X18.383 Y151.578 E706.7439
|
|
|
|
|
+G1 X18.944 Y150.91 E706.77291
|
|
|
|
|
+G1 X19.325 Y150.124 E706.80196
|
|
|
|
|
+G1 X19.449 Y149.516 E706.8226
|
|
|
|
|
+G1 X19.502 Y149.252 E706.83156
|
|
|
|
|
+G1 X19.467 Y148.751 E706.84826
|
|
|
|
|
+G1 X19.684 Y149.152 E706.85187
|
|
|
|
|
+G1 X19.726 Y149.229 E706.85411
|
|
|
|
|
+G1 X19.837 Y149.475 E706.86122
|
|
|
|
|
+G1 X19.941 Y149.703 E706.86955
|
|
|
|
|
+G1 X20.2 Y150.415 E706.89475
|
|
|
|
|
+G1 X20.334 Y150.883 E706.91094
|
|
|
|
|
+G1 X20.496 Y151.677 E706.93789
|
|
|
|
|
+G1 X20.558 Y152.139 E706.9534
|
|
|
|
|
+G1 X20.59 Y152.686 E706.97162
|
|
|
|
|
+G1 X20.611 Y153.395 E706.99521
|
|
|
|
|
+G0 F7200 X17.83 Y145.679
|
|
|
|
|
+G0 X11.372 Y143.6
|
|
|
|
|
+G0 X11.372 Y76.391
|
|
|
|
|
+G0 X11.606 Y75.612
|
|
|
|
|
+G1 F3600 X11.605 Y75.613 E706.99526
|
|
|
|
|
+G1 X11.4 Y75.618 E707.00208
|
|
|
|
|
+G1 X11.4 Y75.413 E707.00646
|
|
|
|
|
+G1 X11.4 Y75.412 E707.0065
|
|
|
|
|
+G1 X11.4 Y66.4 E707.30624
|
|
|
|
|
+G1 X20.417 Y66.4 E707.60614
|
|
|
|
|
+G1 X20.418 Y66.4 E707.60618
|
|
|
|
|
+G1 X20.626 Y66.4 E707.61309
|
|
|
|
|
+G1 X20.617 Y66.608 E707.61752
|
|
|
|
|
+G1 X20.565 Y67.736 E707.65508
|
|
|
|
|
+G1 X20.507 Y68.252 E707.67235
|
|
|
|
|
+G1 X20.364 Y68.984 E707.69716
|
|
|
|
|
+G1 X20.229 Y69.492 E707.71464
|
|
|
|
|
+G1 X20.055 Y70.003 E707.73259
|
|
|
|
|
+G1 X19.845 Y70.502 E707.7506
|
|
|
|
|
+G1 X19.769 Y70.684 E707.75716
|
|
|
|
|
+G1 X19.498 Y71.201 E707.77657
|
|
|
|
|
+G1 X19.464 Y70.706 E707.78238
|
|
|
|
|
+G1 X19.45 Y70.509 E707.78819
|
|
|
|
|
+G1 X19.431 Y70.246 E707.79696
|
|
|
|
|
+G1 X19.128 Y69.403 E707.82676
|
|
|
|
|
+G1 X18.634 Y68.684 E707.85577
|
|
|
|
|
+G1 X17.984 Y68.104 E707.88474
|
|
|
|
|
+G1 X17.205 Y67.703 E707.91389
|
|
|
|
|
+G1 X16.36 Y67.509 E707.94272
|
|
|
|
|
+G1 X15.485 Y67.526 E707.97183
|
|
|
|
|
+G1 X14.643 Y67.761 E708.00091
|
|
|
|
|
+G1 X13.886 Y68.196 E708.02994
|
|
|
|
|
+G1 X13.26 Y68.805 E708.05899
|
|
|
|
|
+G1 X12.804 Y69.551 E708.08807
|
|
|
|
|
+G1 X12.545 Y70.382 E708.11702
|
|
|
|
|
+G1 X12.498 Y71.254 E708.14607
|
|
|
|
|
+G1 X12.671 Y72.112 E708.17518
|
|
|
|
|
+G1 X13.047 Y72.898 E708.20416
|
|
|
|
|
+G1 X13.606 Y73.569 E708.23321
|
|
|
|
|
+G1 X14.316 Y74.08 E708.2623
|
|
|
|
|
+G1 X15.128 Y74.398 E708.29131
|
|
|
|
|
+G1 X15.525 Y74.45 E708.30462
|
|
|
|
|
+G1 X15.806 Y74.486 E708.31405
|
|
|
|
|
+G1 X15.99 Y74.51 E708.32022
|
|
|
|
|
+G1 X16.22 Y74.482 E708.32792
|
|
|
|
|
+G1 X16.031 Y74.584 E708.32852
|
|
|
|
|
+G1 X15.776 Y74.722 E708.33364
|
|
|
|
|
+G1 X15.518 Y74.839 E708.34122
|
|
|
|
|
+G1 X15.292 Y74.943 E708.34949
|
|
|
|
|
+G1 X14.587 Y75.199 E708.37444
|
|
|
|
|
+G1 X14.107 Y75.338 E708.39106
|
|
|
|
|
+G1 X13.357 Y75.489 E708.4165
|
|
|
|
|
+G1 X12.854 Y75.558 E708.43339
|
|
|
|
|
+G1 X12.307 Y75.59 E708.45161
|
|
|
|
|
+G1 X11.606 Y75.612 E708.47494
|
|
|
|
|
+G0 F7200 X17.307 Y73.413
|
|
|
|
|
+G0 X18.301 Y72.493
|
|
|
|
|
+G0 X19.036 Y70.329
|
|
|
|
|
+G1 F3600 X18.769 Y69.587 E708.50117
|
|
|
|
|
+G1 X18.332 Y68.95 E708.52686
|
|
|
|
|
+G1 X17.756 Y68.436 E708.55254
|
|
|
|
|
+G1 X17.067 Y68.082 E708.5783
|
|
|
|
|
+G1 X16.318 Y67.91 E708.60386
|
|
|
|
|
+G1 X15.544 Y67.925 E708.62961
|
|
|
|
|
+G1 X14.799 Y68.133 E708.65534
|
|
|
|
|
+G1 X14.129 Y68.518 E708.68104
|
|
|
|
|
+G1 X13.575 Y69.057 E708.70675
|
|
|
|
|
+G1 X13.171 Y69.717 E708.73249
|
|
|
|
|
+G1 X12.942 Y70.453 E708.75812
|
|
|
|
|
+G1 X12.9 Y71.225 E708.78384
|
|
|
|
|
+G1 X13.053 Y71.984 E708.80959
|
|
|
|
|
+G1 X13.386 Y72.68 E708.83525
|
|
|
|
|
+G1 X13.881 Y73.274 E708.86097
|
|
|
|
|
+G1 X14.509 Y73.726 E708.8867
|
|
|
|
|
+G1 X15.228 Y74.008 E708.91239
|
|
|
|
|
+G1 X15.992 Y74.107 E708.93801
|
|
|
|
|
+G1 X16.759 Y74.014 E708.96371
|
|
|
|
|
+G1 X17.234 Y73.828 E708.98068
|
|
|
|
|
+G1 X17.48 Y73.732 E708.98946
|
|
|
|
|
+G1 X17.879 Y73.446 E709.00579
|
|
|
|
|
+G1 X18.109 Y73.282 E709.01518
|
|
|
|
|
+G1 X18.254 Y73.11 E709.02267
|
|
|
|
|
+G1 X18.606 Y72.691 E709.04087
|
|
|
|
|
+G1 X18.611 Y72.68 E709.04127
|
|
|
|
|
+G1 X18.825 Y72.238 E709.0576
|
|
|
|
|
+G1 X18.943 Y71.995 E709.06659
|
|
|
|
|
+G1 X19.099 Y71.226 E709.09269
|
|
|
|
|
+G1 X19.036 Y70.329 E709.12259
|
|
|
|
|
+G0 F7200 X17.834 Y74.318
|
|
|
|
|
+G0 X11.372 Y76.391
|
|
|
|
|
+G0 X11.372 Y143.6
|
|
|
|
|
+G0 X17.579 Y146.203
|
|
|
|
|
+G0 X19.036 Y148.329
|
|
|
|
|
+G1 F3600 X18.85 Y147.814 E709.14081
|
|
|
|
|
+G1 X18.769 Y147.587 E709.14882
|
|
|
|
|
+G1 X18.687 Y147.467 E709.15366
|
|
|
|
|
+G1 X18.387 Y147.03 E709.17129
|
|
|
|
|
+G1 X18.332 Y146.95 E709.17452
|
|
|
|
|
+G1 X17.863 Y146.531 E709.19543
|
|
|
|
|
+G1 X17.756 Y146.436 E709.20019
|
|
|
|
|
+G1 X17.44 Y146.274 E709.212
|
|
|
|
|
+G1 X17.182 Y146.142 E709.22164
|
|
|
|
|
+G1 X17.067 Y146.082 E709.22596
|
|
|
|
|
+G1 X16.318 Y145.91 E709.25152
|
|
|
|
|
+G1 X15.544 Y145.925 E709.27726
|
|
|
|
|
+G1 X14.799 Y146.133 E709.30299
|
|
|
|
|
+G1 X14.129 Y146.518 E709.32869
|
|
|
|
|
+G1 X13.575 Y147.057 E709.3544
|
|
|
|
|
+G1 X13.171 Y147.717 E709.38014
|
|
|
|
|
+G1 X12.942 Y148.453 E709.40577
|
|
|
|
|
+G1 X12.9 Y149.225 E709.43149
|
|
|
|
|
+G1 X13.053 Y149.984 E709.45724
|
|
|
|
|
+G1 X13.386 Y150.68 E709.4829
|
|
|
|
|
+G1 X13.881 Y151.274 E709.50862
|
|
|
|
|
+G1 X14.509 Y151.726 E709.53436
|
|
|
|
|
+G1 X15.228 Y152.008 E709.56004
|
|
|
|
|
+G1 X15.992 Y152.107 E709.58567
|
|
|
|
|
+G1 X16.759 Y152.014 E709.61136
|
|
|
|
|
+G1 X17.48 Y151.732 E709.63711
|
|
|
|
|
+G1 X18.109 Y151.282 E709.66284
|
|
|
|
|
+G1 X18.606 Y150.691 E709.68852
|
|
|
|
|
+G1 X18.943 Y149.995 E709.71424
|
|
|
|
|
+G1 X19.099 Y149.226 E709.74034
|
|
|
|
|
+G1 X19.036 Y148.329 E709.77025
|
|
|
|
|
+G0 F7200 X21.023 Y153.795
|
|
|
|
|
+G1 F3600 X21.024 Y153.796 E709.77029
|
|
|
|
|
+G1 X21.028 Y154 E709.77708
|
|
|
|
|
+G1 X20.824 Y154 E709.78145
|
|
|
|
|
+G1 X20.823 Y154 E709.78148
|
|
|
|
|
+G1 X11 Y154 E710.10819
|
|
|
|
|
+G1 X11 Y144.164 E710.43534
|
|
|
|
|
+G1 X11 Y144.163 E710.43537
|
|
|
|
|
+G1 X11 Y143.955 E710.44229
|
|
|
|
|
+G1 X11.208 Y143.964 E710.44672
|
|
|
|
|
+G1 X12.761 Y144.036 E710.49843
|
|
|
|
|
+G1 X13.322 Y144.099 E710.5172
|
|
|
|
|
+G1 X14.072 Y144.245 E710.54262
|
|
|
|
|
+G1 X14.616 Y144.39 E710.56134
|
|
|
|
|
+G1 X15.331 Y144.643 E710.58657
|
|
|
|
|
+G1 X15.849 Y144.865 E710.60531
|
|
|
|
|
+G1 X16.52 Y145.221 E710.63058
|
|
|
|
|
+G1 X17.003 Y145.519 E710.64945
|
|
|
|
|
+G1 X17.367 Y145.787 E710.66449
|
|
|
|
|
+G1 X17.601 Y145.958 E710.67357
|
|
|
|
|
+G1 X17.927 Y146.233 E710.68484
|
|
|
|
|
+G1 X18.041 Y146.33 E710.68819
|
|
|
|
|
+G1 X18.497 Y146.783 E710.70168
|
|
|
|
|
+G1 X18.599 Y146.884 E710.70491
|
|
|
|
|
+G1 X18.951 Y147.285 E710.71774
|
|
|
|
|
+G1 X19.03 Y147.39 E710.72123
|
|
|
|
|
+G1 X19.175 Y147.583 E710.72853
|
|
|
|
|
+G1 X19.412 Y147.899 E710.74167
|
|
|
|
|
+G1 X19.719 Y148.376 E710.76054
|
|
|
|
|
+G1 X20.078 Y149.038 E710.78559
|
|
|
|
|
+G1 X20.314 Y149.558 E710.80458
|
|
|
|
|
+G1 X20.578 Y150.285 E710.8303
|
|
|
|
|
+G1 X20.724 Y150.792 E710.84785
|
|
|
|
|
+G1 X20.888 Y151.597 E710.87518
|
|
|
|
|
+G1 X20.956 Y152.103 E710.89216
|
|
|
|
|
+G1 X20.99 Y152.675 E710.91122
|
|
|
|
|
+G1 X21.023 Y153.795 E710.94848
|
|
|
|
|
+G0 F7200 X198.6 Y153.628
|
|
|
|
|
+G0 X201.502 Y147.867
|
|
|
|
|
+G0 X202.348 Y146.809
|
|
|
|
|
+G0 X203.598 Y146.285
|
|
|
|
|
+G0 X204.942 Y146.424
|
|
|
|
|
+G0 X205.839 Y146.993
|
|
|
|
|
+G0 X207.036 Y148.329
|
|
|
|
|
+G1 F3600 X206.769 Y147.587 E710.97471
|
|
|
|
|
+G1 X206.332 Y146.95 E711.0004
|
|
|
|
|
+G1 X205.756 Y146.436 E711.02608
|
|
|
|
|
+G1 X205.067 Y146.082 E711.05184
|
|
|
|
|
+G1 X204.318 Y145.91 E711.0774
|
|
|
|
|
+G1 X203.544 Y145.925 E711.10315
|
|
|
|
|
+G1 X202.862 Y146.116 E711.12671
|
|
|
|
|
+G1 X202.799 Y146.133 E711.12888
|
|
|
|
|
+G1 X202.444 Y146.337 E711.1425
|
|
|
|
|
+G1 X202.129 Y146.518 E711.15458
|
|
|
|
|
+G1 X202.073 Y146.572 E711.15717
|
|
|
|
|
+G1 X201.575 Y147.057 E711.18029
|
|
|
|
|
+G1 X201.552 Y147.094 E711.18174
|
|
|
|
|
+G1 X201.255 Y147.58 E711.20068
|
|
|
|
|
+G1 X201.171 Y147.717 E711.20603
|
|
|
|
|
+G1 X201.136 Y147.83 E711.20996
|
|
|
|
|
+G1 X200.942 Y148.453 E711.23166
|
|
|
|
|
+G1 X200.9 Y149.225 E711.25738
|
|
|
|
|
+G1 X201.053 Y149.984 E711.28313
|
|
|
|
|
+G1 X201.386 Y150.68 E711.30879
|
|
|
|
|
+G1 X201.881 Y151.274 E711.33451
|
|
|
|
|
+G1 X202.509 Y151.726 E711.36025
|
|
|
|
|
+G1 X203.228 Y152.008 E711.38593
|
|
|
|
|
+G1 X203.992 Y152.107 E711.41156
|
|
|
|
|
+G1 X204.759 Y152.014 E711.43725
|
|
|
|
|
+G1 X205.48 Y151.732 E711.463
|
|
|
|
|
+G1 X206.109 Y151.282 E711.48873
|
|
|
|
|
+G1 X206.606 Y150.691 E711.51441
|
|
|
|
|
+G1 X206.943 Y149.995 E711.54013
|
|
|
|
|
+G1 X207.099 Y149.226 E711.56623
|
|
|
|
|
+G1 X207.036 Y148.329 E711.59614
|
|
|
|
|
+G0 F7200 X208.794 Y143.976
|
|
|
|
|
+G1 F3600 X208.795 Y143.975 E711.59618
|
|
|
|
|
+G1 X209 Y143.97 E711.603
|
|
|
|
|
+G1 X209 Y144.175 E711.60738
|
|
|
|
|
+G1 X209 Y144.176 E711.60742
|
|
|
|
|
+G1 X209 Y154 E711.93417
|
|
|
|
|
+G1 X199.164 Y154 E712.26131
|
|
|
|
|
+G1 X199.163 Y154 E712.26135
|
|
|
|
|
+G1 X198.955 Y154 E712.26826
|
|
|
|
|
+G1 X198.964 Y153.792 E712.27269
|
|
|
|
|
+G1 X199.035 Y152.245 E712.3242
|
|
|
|
|
+G1 X199.1 Y151.673 E712.34335
|
|
|
|
|
+G1 X199.243 Y150.938 E712.36825
|
|
|
|
|
+G1 X199.39 Y150.384 E712.38731
|
|
|
|
|
+G1 X199.643 Y149.669 E712.41254
|
|
|
|
|
+G1 X199.865 Y149.151 E712.43128
|
|
|
|
|
+G1 X200.219 Y148.484 E712.4564
|
|
|
|
|
+G1 X200.519 Y147.997 E712.47542
|
|
|
|
|
+G1 X200.81 Y147.6 E712.4918
|
|
|
|
|
+G1 X200.88 Y147.505 E712.49553
|
|
|
|
|
+G1 X200.958 Y147.399 E712.49934
|
|
|
|
|
+G1 X201.33 Y146.959 E712.5141
|
|
|
|
|
+G1 X201.402 Y146.886 E712.51661
|
|
|
|
|
+G1 X201.895 Y146.39 E712.53108
|
|
|
|
|
+G1 X201.963 Y146.33 E712.53306
|
|
|
|
|
+G1 X202.28 Y146.052 E712.54347
|
|
|
|
|
+G1 X202.573 Y145.833 E712.55408
|
|
|
|
|
+G1 X202.625 Y145.794 E712.55617
|
|
|
|
|
+G1 X202.899 Y145.588 E712.56757
|
|
|
|
|
+G1 X203.372 Y145.284 E712.58627
|
|
|
|
|
+G1 X204.046 Y144.919 E712.61177
|
|
|
|
|
+G1 X204.558 Y144.686 E712.63048
|
|
|
|
|
+G1 X205.282 Y144.423 E712.6561
|
|
|
|
|
+G1 X205.8 Y144.273 E712.67403
|
|
|
|
|
+G1 X206.573 Y144.117 E712.70026
|
|
|
|
|
+G1 X207.108 Y144.044 E712.71822
|
|
|
|
|
+G1 X207.681 Y144.01 E712.73731
|
|
|
|
|
+G1 X208.794 Y143.976 E712.77435
|
|
|
|
|
+G0 F7200 X208.628 Y76.4
|
|
|
|
|
+G0 X207.036 Y70.329
|
|
|
|
|
+G1 F3600 X206.769 Y69.587 E712.80058
|
|
|
|
|
+G1 X206.332 Y68.95 E712.82627
|
|
|
|
|
+G1 X205.756 Y68.436 E712.85195
|
|
|
|
|
+G1 X205.067 Y68.082 E712.87771
|
|
|
|
|
+G1 X204.318 Y67.91 E712.90327
|
|
|
|
|
+G1 X203.544 Y67.925 E712.92902
|
|
|
|
|
+G1 X202.799 Y68.133 E712.95475
|
|
|
|
|
+G1 X202.129 Y68.518 E712.98045
|
|
|
|
|
+G1 X201.575 Y69.057 E713.00616
|
|
|
|
|
+G1 X201.171 Y69.717 E713.03189
|
|
|
|
|
+G1 X200.942 Y70.453 E713.05753
|
|
|
|
|
+G1 X200.9 Y71.225 E713.08324
|
|
|
|
|
+G1 X201.053 Y71.984 E713.109
|
|
|
|
|
+G1 X201.159 Y72.206 E713.11718
|
|
|
|
|
+G1 X201.336 Y72.577 E713.13085
|
|
|
|
|
+G1 X201.386 Y72.68 E713.13466
|
|
|
|
|
+G1 X201.606 Y72.944 E713.14609
|
|
|
|
|
+G1 X201.881 Y73.274 E713.16038
|
|
|
|
|
+G1 X202.12 Y73.446 E713.17017
|
|
|
|
|
+G1 X202.509 Y73.726 E713.18611
|
|
|
|
|
+G1 X202.747 Y73.819 E713.19461
|
|
|
|
|
+G1 X203.228 Y74.008 E713.2118
|
|
|
|
|
+G1 X203.992 Y74.107 E713.23742
|
|
|
|
|
+G1 X204.759 Y74.014 E713.26312
|
|
|
|
|
+G1 X205.48 Y73.732 E713.28887
|
|
|
|
|
+G1 X206.109 Y73.282 E713.31459
|
|
|
|
|
+G1 X206.606 Y72.691 E713.34028
|
|
|
|
|
+G1 X206.943 Y71.995 E713.366
|
|
|
|
|
+G1 X207.099 Y71.226 E713.39209
|
|
|
|
|
+G1 X207.036 Y70.329 E713.422
|
|
|
|
|
+G0 F7200 X206.06 Y69.19
|
|
|
|
|
+G0 X205.206 Y68.561
|
|
|
|
|
+G0 X198.98 Y66
|
|
|
|
|
+G1 F3600 X21.045 Y66
|
|
|
|
|
+G1 X21.036 Y66.208 E713.42893
|
|
|
|
|
+G1 X20.964 Y67.768 E713.48087
|
|
|
|
|
+G1 X20.903 Y68.313 E713.49911
|
|
|
|
|
+G1 X20.755 Y69.07 E713.52476
|
|
|
|
|
+G1 X20.612 Y69.61 E713.54334
|
|
|
|
|
+G1 X20.43 Y70.144 E713.56211
|
|
|
|
|
+G1 X20.132 Y70.854 E713.58772
|
|
|
|
|
+G1 X19.881 Y71.341 E713.60594
|
|
|
|
|
+G1 X19.556 Y71.883 E713.62696
|
|
|
|
|
+G1 X19.221 Y72.37 E713.64662
|
|
|
|
|
+G1 X19.18 Y72.421 E713.64879
|
|
|
|
|
+G1 X18.873 Y72.806 E713.66294
|
|
|
|
|
+G1 X18.811 Y72.875 E713.66551
|
|
|
|
|
+G1 X18.45 Y73.274 E713.67731
|
|
|
|
|
+G1 X18.271 Y73.448 E713.68252
|
|
|
|
|
+G1 X18.041 Y73.671 E713.68952
|
|
|
|
|
+G1 X17.684 Y73.972 E713.70088
|
|
|
|
|
+G1 X17.611 Y74.034 E713.70376
|
|
|
|
|
+G1 X17.399 Y74.192 E713.71178
|
|
|
|
|
+G1 X17.109 Y74.407 E713.72378
|
|
|
|
|
+G1 X16.628 Y74.716 E713.7428
|
|
|
|
|
+G1 X15.954 Y75.081 E713.76829
|
|
|
|
|
+G1 X15.442 Y75.314 E713.787
|
|
|
|
|
+G1 X14.718 Y75.577 E713.81262
|
|
|
|
|
+G1 X14.2 Y75.727 E713.83056
|
|
|
|
|
+G1 X13.427 Y75.883 E713.85679
|
|
|
|
|
+G1 X12.892 Y75.956 E713.87475
|
|
|
|
|
+G1 X12.319 Y75.99 E713.89384
|
|
|
|
|
+G1 X11.206 Y76.024 E713.93087
|
|
|
|
|
+G1 X11.205 Y76.025 E713.93092
|
|
|
|
|
+G1 X11 Y76.03 E713.93774
|
|
|
|
|
+G1 X11 Y75.825 E713.94212
|
|
|
|
|
+G1 X11 Y75.824 E713.94216
|
|
|
|
|
+G1 X11 Y66 E714.2689
|
|
|
|
|
+G1 X20.836 Y66 E714.59605
|
|
|
|
|
+G1 X21.045 Y66 E714.603
|
|
|
|
|
+G1 X198.98 Y66 E720.52114
|
|
|
|
|
+G1 X199.184 Y66 E720.52793
|
|
|
|
|
+G1 X209 Y66 E720.85441
|
|
|
|
|
+G1 X209 Y75.836 E721.18156
|
|
|
|
|
+G1 X209 Y75.837 E721.18159
|
|
|
|
|
+G1 X209 Y76.045 E721.18851
|
|
|
|
|
+G1 X208.792 Y76.036 E721.19294
|
|
|
|
|
+G1 X207.239 Y75.964 E721.24465
|
|
|
|
|
+G1 X206.678 Y75.901 E721.26342
|
|
|
|
|
+G1 X205.928 Y75.755 E721.28883
|
|
|
|
|
+G1 X205.384 Y75.61 E721.30756
|
|
|
|
|
+G1 X204.667 Y75.356 E721.33286
|
|
|
|
|
+G1 X204.151 Y75.135 E721.35153
|
|
|
|
|
+G1 X203.48 Y74.779 E721.37679
|
|
|
|
|
+G1 X202.997 Y74.481 E721.39567
|
|
|
|
|
+G1 X202.603 Y74.191 E721.41194
|
|
|
|
|
+G1 X202.397 Y74.04 E721.41988
|
|
|
|
|
+G1 X202.308 Y73.965 E721.42375
|
|
|
|
|
+G1 X201.959 Y73.67 E721.4348
|
|
|
|
|
+G1 X201.722 Y73.435 E721.44201
|
|
|
|
|
+G1 X201.401 Y73.116 E721.45143
|
|
|
|
|
+G1 X201.179 Y72.863 E721.45898
|
|
|
|
|
+G1 X201.049 Y72.715 E721.46421
|
|
|
|
|
+G1 X200.802 Y72.386 E721.4765
|
|
|
|
|
+G1 X200.587 Y72.099 E721.48842
|
|
|
|
|
+G1 X200.281 Y71.624 E721.50722
|
|
|
|
|
+G1 X199.916 Y70.95 E721.53271
|
|
|
|
|
+G1 X199.687 Y70.447 E721.55109
|
|
|
|
|
+G1 X199.422 Y69.715 E721.57699
|
|
|
|
|
+G1 X199.275 Y69.204 E721.59467
|
|
|
|
|
+G1 X199.112 Y68.403 E721.62186
|
|
|
|
|
+G1 X199.044 Y67.893 E721.638
|