Cleint и Server в одном флаконе.
- Войдите на сайт для отправки комментариев
Пт, 02/08/2013 - 11:55
import processing.net.*;
Server server;
Client client;
int html_port = 80;
int arduino_port = 82;
String IP_arduino = "88.85.206.140";
String t= "";
void setup()
{
size(400, 400);
server = new Server(this, html_port);
delay (3000);
client = new Client(this, IP_arduino, arduino_port);
delay (3000);
client.write ("1");
background(0);
}
void draw()
{
//Считывание данных с ARDUINO
while (client.available()>0){
char ch = client.readChar();
if (ch == '!') {t = client.readStringUntil('?');}
delay(20);
}
println (t);
// Запускаем html СЕРВЕР
server = server.available();
if (server != null) {
String whatClientSaid = server.readString();
if (whatClientSaid != null) {
server.write ("<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN'");
server.write ("<html>");
server.write ("<head> ");
server.write ("<meta http-equiv= refresh content=10;>");
server.write ("<meta http-equiv='Content-Type' content='text/html; charset='utf-8' /> ");
server.write ("</head> ");
server.write ("<body>");
server.write ("<b><font size='+3'>Микроклимат серверной </font></b>");
server.write ("<br> ");
server.write ("<b>Датчик №1</b>");
server.write ("<br> ");
server.write ("Температура: ");
// server.write (t);
server.write (" *C");
server.write ("<br>");
server.write ("Влажность: ");
// server.write (h);
server.write (" %");
server.write ("<br> ");
server.write ("<b>Датчик №2</b>");
server.write ("<br> ");
server.write ("Температура: ");
// server.write (t1);
server.write (" *C");
server.write ("<br> ");
server.write ("<b>Датчик №3</b>");
server.write ("<br> ");
server.write ("Температура: ");
// server.write (t2);
server.write (" *C");
server.write ("<br> ");
server.write ("<hr>");
server.write ("<br> ");
server.write ("<b>Заданные нормы температур и влажности:</b>");
server.write ("<br> ");
server.write ("Верхняя температурная граница регулирования: ");
// server.write (temperature_up);
server.write (" *C");
server.write ("<br> ");
server.write ("Нижняя температурная граница регулирования: ");
// server.write (temperature_down);
server.write (" *C");
server.write ("<br> ");
server.write ("Максимум нормальной влажности воздуха: ");
// server.write (humdity);
server.write (" %");
server.write ("<br> ");
server.write ("<hr>");
server.write ("<br> ");
server.write ("<b>Уставки сигналов аварии:</b>");
server.write ("<br> ");
server.write ("Верхняя температурная граница сигнала аварии: ");
// server.write (signal_T_up);
server.write (" *C");
server.write ("<br> ");
server.write ("Нижняя температурная граница сигнала аварии: ");
// server.write (signal_T_down);
server.write (" *C");
server.write ("<br> ");
server.write ("Аварийный максимум влажности воздуха: ");
// server.write (signal_H_up);
server.write (" %");
server.write ("<br> ");
server.write ("<hr>");
server.write ("<br> ");
server.write ("<b>Состояние климата</b>");
server.write ("<br>");
server.write ("</body></html>");
server.stop();
}
}//Конц html сервера
}
Не компелирует, ошибка:
The constructor Server(Server, int) is undefined.
С чем связано? С тем что и клиент и сервер инициализируются?
В процессинге не силен, может так
Server myServer;
...
myServer =newServer(this, html_port);Код отсюда
http://processing.org/reference/libraries/net/Server.html
работает?
Код отсюда
http://processing.org/reference/libraries/net/Server.html
работает?
Нет. ведь myServer это всего лишь переменная, которую я объявил еще в начале.
По отдельности конструкции работают, а вместе - ошибка компиляции.
Версия процессинга какая?
И еще
server = server.available(); так нельзя делать
http://processing.org/reference/libraries/net/Server_available_.html
Client myClient = server.available(); if (myClient != null) { String whatClientSaid = myClient.readString();Вроде так нужно
У меня под 1,5 запускается
Client myClient = server.available(); if (myClient != null) { String whatClientSaid = myClient.readString();Вроде так нужно
У меня под 1,5 запускается
Спасиб, приду домой попробую.
Может еще подскажите
import processing.net.*; Client client; int arduino_port = 82; String IP_arduino = "88.85.206.140"; long time=0; char x; void setup() { size(200, 200); client = new Client(this, IP_arduino, arduino_port); delay (3000); } void draw() { time ++; client.write ("GET Processing 2.0 Server. IP adress: "+Server.ip()+" Request: "+time); delay (1000); while (client.available() > 0){ x = client.readChar(); println (x); } background (0); fill (255); }Вроде код простой, но выдает
Откуда вылазит NullPointerException ?????
Скетч можете запускать в своем процессинге, IP в нем прописан подключенного ардуино.
Под 1.5
client.write ("GET Processing 2.0 Server. IP adress: ");Запустилось
Вот на это Server.ip() руглнулось, удалил.
Больше не подскажу, пусть гуры процессинга помогают.
И все же версия процессинга какая?
Под 1.5
client.write ("GET Processing 2.0 Server. IP adress: ");Запустилось
Вот на это Server.ip() руглнулось, удалил.
Больше не подскажу, пусть гуры процессинга помогают.
И все же версия процессинга какая?