Go Down

Topic: Modbus tcp (Read 1 time) previous topic - next topic

adcarang

ciao a tutti.

  Finalmente  mi รจ arrivato il mio primo Arduino UNO e la mia Shield  Ethernet .Mi sto cimentano nella mia prima applicazione ,
  e sto utilizzando un esempio in modbus di  Martin Pettersson http://code.google.com/p/mudbus/ :
  arrivo subito al sodo non so per quale raggione  il frame di  risposta modbus mi arriva  una volta si e un a volta e non dipende dal tempo di polling
questo  e il codice che gira sulla scheda
Code: [Select]
#include <SPI.h>
#include <Ethernet.h>

#include "Mudbus.h"

Mudbus Mb;
//Function codes 1(read coils), 3(read registers), 5(write coil), 6(write register)
//signed int Mb.R[0 to 125] and bool Mb.C[0 to 128] MB_N_R MB_N_C
//Port 502 (defined in Mudbus.h) MB_PORT

void setup()
{
  uint8_t mac[]     = { 0x90, 0xA2, 0xDA, 0x00, 0x51, 0x06 };
  uint8_t ip[]      = { 192, 168, 1, 8 };
  uint8_t gateway[] = { 192, 168, 1, 1 };
  uint8_t subnet[]  = { 255, 255, 255, 0 };
  Ethernet.begin(mac, ip, gateway, subnet);
  //Avoid pins 4,10,11,12,13 when using ethernet shield

  delay(5000);
  Serial.begin(9600);
 
  pinMode(7, INPUT);
  pinMode(8, OUTPUT);
}

void loop()
{
  Mb.Run();
 
  //Analog inputs 0-1023
  Mb.R[0] = 1; //pin A0 to Mb.R[0]
  Mb.R[1] = 2;
  Mb.R[2] = 3;
  Mb.R[3] = 4;
  Mb.R[4] = 5;
  Mb.R[5] = 6;

  //Analog outputs 0-255
  analogWrite(6, Mb.R[6]); //pin ~6 from Mb.R[6]

  //Digital inputs
  Mb.C[7] = digitalRead(7); //pin 7 to Mb.C[7]

  //Digital outputs
  digitalWrite(8, Mb.C[8]); //pin 8 from Mb.C[8]
}



qualcuno sa darmi una risposta? se ha avuto eperienza con questa libreria o con un 'altra

Go Up
 


Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

Arduino
via Egeo 16
Torino, 10131
Italy