Arduino para Servidores Linux

hola soy programador en php y me gustaria incursionar en el mundo de arruino mas enfocado asi modulo de ethernet shield client, tengo un mar de duda ya que estoy acostumbrado a trabajar con servidores lapp(linux(centos 7),apache,postgresql,php) como sabemos al configurar un servidor linux activamos los servicios,en mi caso cada vez que se reinicia el servidor se inician el apache y el postgresql.

mi pregunta es como se inicializa el arduino como cliente dentro de un servidor linux(como le digo al servidor que php esta invocando un archivo arduino para que se ejecute su codigo) o tengo que crear un script en el servidor para que siempre este corriendo el fragmento de código de arduino? o donde se cargar el codigo de ardunio

*nota los servidores en los que trabajo son versiones minimalistas (consola sin interfaz gráfica)

donde puedo puedo encontrar documentación?

Todo depende de lo que quieras lograr, no es lo mismo un datalogger que un proyecto domotico.
En algún momento monte un servidor LAMP como datalogger de unos PLC TCP/ip Modbus, pero las pruebas las realice con un arduino conectado por USB al server. Las ensayos previos fueron Estos y por simpleza utilice el programa escrito en "C" ejecutándose al iniciar el servidor y generando una entrada en la base de datos por evento , pero hay muchas maneras de lograrlo.

Saludos

Montero117:
mi pregunta es como se inicializa el arduino como cliente dentro de un servidor linux(como le digo al servidor que php esta invocando un archivo arduino para que se ejecute su codigo) o tengo que crear un script en el servidor para que siempre este corriendo el fragmento de código de arduino? o donde se cargar el codigo de ardunio

ArduMyth, si nos ponemos legalistas, Montero se expreso razonablemente bien. Puede resultar raro para un usuario de windows , pero para linux todo es un archivo ya sea un teclado, mouse, un arduino, otro server o cliente remoto.

Estoy seguro lo que estoy diciendo. Linux es un sistema operativo que ve todo como un archivo y se pueden hacer cosas que desde Windos no, como por ejemplo leer el volcado de un arduino como si fuera un archivo, incluso desde PHP o cualquier idioma de programación.
Por ejemplo puedes cargar un simple programa en el Arduino que saque por serial USB números al azar y bastara abrir el archivo /dev/ttyACM1 con cualquier procesador de texto y cada vez que lo abras tendrás diferentes números al azar

void setup() {
 
  Serial.begin(9600);
}
void loop() {
   randomSeed(millis());  
  Serial.println(random(255));
  
}

Y desde PHP leerlo

<?php 
$variable=0;
while($variable<1) {
$fp = fopen("/dev/ttyACM1", "r");



$linea = fgets($fp);

echo $linea . "
";

//echo "sdd"."
";

fclose($fp);
}
?>

Y saldrán números al azar por la pagina,generados por el arduino.

gracias por responder mi duda,y disculpen tal ves no fue el planteamiento mas correcto,pero si se que es un lenguaje de programación, solo que no comprendía como trabaja arduino ya que en muchos tutoriales y paginas los ejemplos están hechos en windows y solo te dicen que instales ide de arduino,conectes el arduino y ejecutes el código mas no explican ya en un ambiente de producción.

así que como dice el usuario PeterKantTropus que fue el mas acertado resolviendo esa duda que rondaba mi cabeza,linux ve todo como un archivo y me gusto mucho poder confirmar mis pobres suposiciones de como hacer un proyecto con arduino.

ahora lo que queda por hacer es usar las tecnologías y pensar un poco soluciones creativas como las que propone PeterKantTropus

de nuevo gracias por responder y espero que puedan volver a ayudarme cundo lo necesite

*espero no molestarlos muy seguido XD

Montero, igualmente leer el volcado del Arduino es algo chapucero, solo lo puse como ejemplo de lo diferente que son los sistemas operativos . Lo mejor es usar algún protocolo para transferencia de datos implementado en Arduino que sea independiente del sistema operativo que uses . Si nos cuenta más lo que vas a hacer tal vez podamos aconsejarte mejor. Es mejor dejarlo lo más simple posible del lado del arduino.
Saludos