PCCar.ru - Ваш автомобильный компьютер

Go Back   PCCar.ru - Ваш автомобильный компьютер > MP3Car ТехИнфа > AndroidCar > Дополнительные устройства
Register FAQ Calendar Today's Posts Search

Reply
 
Thread Tools Search this Thread
Old 30-03-2016, 11:52   #221
DelleTenebre
Старший Пользователь
 
Join Date: Jan 2015
Age: 34
Город: Бишкек
Регион: Казахстан
Машина: Subaru Outback
Posts: 163
DelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant future
Default

Quote:
З.Ы. вопрос - а в таскере можно теперь так же по анологии как для RIM сделать :
В таскере создаем профиль-событие-система-Intent Received. В поле действие пишем org.kangaroo.rim.action.ACTION_DATA_RECEIVE. Идем назад на вопрос - выбираем или создаем новую задачу, например, arduino.
4. В задаче:
4.1 Нажимаем плюс-переменная-установить переменную:
Имя: %имя (любое имя)
До: %org_kangaroo_rim_device_extra_args
Вместо org.kangaroo.rim.action.ACTION_DATA_RECEIVE
kg.delletenebre.serial.NEW_DATA

Вместо %org_kangaroo_rim_device_extra_args
%value (в нижнем регистре)

Возможно, если где-то Вы писали %org_kangaroo_rim_device_extra_command
%key (в нижнем регистре)

Остальное должно работать без дополнительной настройки (если до этого работало с RIM). Хотя, мне кажется, что если всего 3-5 датчиков, то не будет ничего страшного если присылать их значения по отдельности, типа <temp0:23> .. <temp1:-10> .. <temp2:101> вместо <temp:23#-10#101>. Но, хозяин - барин.

Quote:
а для чего можно выбирать действия ? хотя догадываюсь - это наверно если кнопки
рулевые используются
Всё верно, например, настраиваем что при нажатии кнопки, ардуино посылает <click:volumeup>, в Serial Manager мы можем назначить определённое действие когда эта команда будет распознана.


Quote:
и все пошло даже без :
* в поле Ключ пишем click
* в поле Значение пишем 125
* в поле Погрешноcть значения пишем 15
* и выберите желаемое действие.
Так и должно было случиться, я просто не знал, что у Вас только датчики. Кстати, выше я эту особенность для виджетов даже подчеркнул
__________________
Подсолнух (github) для авторегулировки яркости экрана по позиции солнца и синхронизации времени по GPS (v1.6 от 13.06.17)
Serial Manager для обработки данных с Arduino
Calls Assistant - замена TabletTalk

Last edited by DelleTenebre; 30-03-2016 at 15:59.. Reason: Исправил неправильный совет :)
DelleTenebre is offline   Reply With Quote
Old 30-03-2016, 13:42   #222
Serg-Zmuh
Старший Пользователь
 
Serg-Zmuh's Avatar
 
Join Date: Feb 2014
Age: 55
Город: Ванино
Регион: 27
Машина: MMC-Pajero-II,V46,4М40
Posts: 327
Serg-Zmuh will become famous soon enough
Default

чет не выходит
вот так в таскере сделал:
где косячу ?
ардуино выводит <InDoor:14.5>
Attached Thumbnails
Click image for larger version

Name:	1.jpg
Views:	772
Size:	43.1 KB
ID:	43246   Click image for larger version

Name:	2.jpg
Views:	1138
Size:	35.2 KB
ID:	43247   Click image for larger version

Name:	3.jpg
Views:	819
Size:	31.6 KB
ID:	43248  
__________________
MMC-Pajero ,Teyes CC3 ,все пока в процессе
Serg-Zmuh is offline   Reply With Quote
Old 30-03-2016, 15:55   #223
DelleTenebre
Старший Пользователь
 
Join Date: Jan 2015
Age: 34
Город: Бишкек
Регион: Казахстан
Машина: Subaru Outback
Posts: 163
DelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant future
Default

Serg-Zmuh, сейчас попробовал, я неправильно посоветовал:
вместо %VALUE надо %value
вместо %KEY надо %key
__________________
Подсолнух (github) для авторегулировки яркости экрана по позиции солнца и синхронизации времени по GPS (v1.6 от 13.06.17)
Serial Manager для обработки данных с Arduino
Calls Assistant - замена TabletTalk
DelleTenebre is offline   Reply With Quote
Old 31-03-2016, 05:00   #224
Serg-Zmuh
Старший Пользователь
 
Serg-Zmuh's Avatar
 
Join Date: Feb 2014
Age: 55
Город: Ванино
Регион: 27
Машина: MMC-Pajero-II,V46,4М40
Posts: 327
Serg-Zmuh will become famous soon enough
Default

да заработало !
копаем разбираемся дальше ....
а вот с этим скетчем :
HTML Code:
#include <OneWire.h>
#include <DallasTemperature.h>
OneWire OW_tempa(9);
OneWire OW_tempb(10);
OneWire OW_tempc(11);
DallasTemperature tempa(&OW_tempa);
DallasTemperature tempb(&OW_tempb);
DallasTemperature tempc(&OW_tempc);
DeviceAddress tempaAddress, tempbAddress, tempcAddress;
void setup(void){
Serial.begin(9600);
tempa.begin();
tempb.begin();
tempc.begin();
}
void loop(void){
tempa.requestTemperatures();
delay(40);
tempb.requestTemperatures();
delay(40);
tempc.requestTemperatures();
delay(40);
Serial.print("<data:");
if ( !tempa.getAddress(tempaAddress,0)){
Serial.print("0");
}else{
Serial.print(tempa.getTempCByIndex(0),1);
}
Serial.print("#");
if ( !tempb.getAddress(tempbAddress,0)){
Serial.print("0");
}else{
Serial.print(tempb.getTempCByIndex(0),1);
}
Serial.print("#");
if ( !tempc.getAddress(tempcAddress,0)){
Serial.print("0");
}else{
Serial.print(tempc.getTempCByIndex(0),1);
}
Serial.println(">");
delay(1000); 
}
не выводит данные в Serial Manager`e
не понимаю как отловить ....
пробовал в строке команда писать: data ,#,data1,data2

извени мня ,наверно я надоел уже
вроде с этим скетчем работает, но как-то со сбоями
вот мне и неймется

P.S. но ! главное что твой SerialManager работает по USB и не отваливается не при каких отключениях - ГУД !
Респект Тебе
__________________
MMC-Pajero ,Teyes CC3 ,все пока в процессе
Serg-Zmuh is offline   Reply With Quote
Old 31-03-2016, 08:58   #225
Максимэ
Новый Пользователь
 
Join Date: Sep 2008
Age: 42
Город: на работе
Регион: 38
Машина: 99\MMC\Pajero IO
Posts: 25
Максимэ is on a distinguished road
Default

Тогда тебе надо в коде заменить на это:
Code:
Serial.print("<InDoor:");
if ( !tempa.getAddress(tempaAddress,0)){
Serial.print("0");
}else{
Serial.print(tempa.getTempCByIndex(0),1);
}
Serial.println(">");
Serial.print("<OutDoor:");
if ( !tempb.getAddress(tempbAddress,0)){
Serial.print("0");
}else{
Serial.print(tempb.getTempCByIndex(0),1);
}
Serial.println(">");
Serial.print("<Engine:");
if ( !tempc.getAddress(tempcAddress,0)){
Serial.print("0");
}else{
Serial.print(tempc.getTempCByIndex(0),1);
}
Serial.println(">");
Максимэ is offline   Reply With Quote
Old 31-03-2016, 12:55   #226
Serg-Zmuh
Старший Пользователь
 
Serg-Zmuh's Avatar
 
Join Date: Feb 2014
Age: 55
Город: Ванино
Регион: 27
Машина: MMC-Pajero-II,V46,4М40
Posts: 327
Serg-Zmuh will become famous soon enough
Default

Quote:
Originally Posted by Максимэ View Post
Тогда тебе надо в коде заменить на это:
поддставил этот код
Code:
#include <OneWire.h>
#include <DallasTemperature.h>
OneWire OW_tempa(9);
OneWire OW_tempb(10);
OneWire OW_tempc(11);
DallasTemperature tempa(&OW_tempa);
DallasTemperature tempb(&OW_tempb);
DallasTemperature tempc(&OW_tempc);
DeviceAddress tempaAddress, tempbAddress, tempcAddress;
void setup(void){
Serial.begin(9600);
tempa.begin();
tempb.begin();
tempc.begin();
}
void loop(void){
tempa.requestTemperatures();
delay(40);
tempb.requestTemperatures();
delay(40);
tempc.requestTemperatures();
delay(40);
Serial.print("<InDoor:");
if ( !tempa.getAddress(tempaAddress,0)){
Serial.print("0");
}else{
Serial.print(tempa.getTempCByIndex(0),1);
}
Serial.println(">");
Serial.print("<OutDoor:");
if ( !tempb.getAddress(tempbAddress,0)){
Serial.print("0");
}else{
Serial.print(tempb.getTempCByIndex(0),1);
}
Serial.println(">");
Serial.print("<Engine:");
if ( !tempc.getAddress(tempcAddress,0)){
Serial.print("0");
}else{
Serial.print(tempc.getTempCByIndex(0),1);
}
Serial.println(">");

}
картина такая:
скетч на компе работает норм ,данные теперь идут раздельно
<InDoor:14.5>
<OutDoor:0>
<Engine:0>

а как только подключаю к планшету ститывает только один-два раза <InDoor:14.5> при подключении ,а потом молчит
это видно в SerialManager один раз уведомление выскакивает и тишина
с задержками поиграся - не помогает (
в logcat показывает что серис стопится
Attached Thumbnails
Click image for larger version

Name:	Screenshot_2016-03-31-20-02-04.jpg
Views:	795
Size:	106.6 KB
ID:	43273  
__________________
MMC-Pajero ,Teyes CC3 ,все пока в процессе

Last edited by Serg-Zmuh; 31-03-2016 at 14:08..
Serg-Zmuh is offline   Reply With Quote
Old 31-03-2016, 13:57   #227
DelleTenebre
Старший Пользователь
 
Join Date: Jan 2015
Age: 34
Город: Бишкек
Регион: Казахстан
Машина: Subaru Outback
Posts: 163
DelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant future
Default

Вы в конец задержку добавляли?

Code:
void loop(void){
tempa.requestTemperatures();
delay(40);
tempb.requestTemperatures();
delay(40);
tempc.requestTemperatures();
delay(40);
Serial.print("<InDoor:");
if ( !tempa.getAddress(tempaAddress,0)){
Serial.print("0");
}else{
Serial.print(tempa.getTempCByIndex(0),1);
}
Serial.println(">");
delay(50);//<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
Serial.print("<OutDoor:");
if ( !tempb.getAddress(tempbAddress,0)){
Serial.print("0");
}else{
Serial.print(tempb.getTempCByIndex(0),1);
}
Serial.println(">");
delay(50);//<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
Serial.print("<Engine:");
if ( !tempc.getAddress(tempcAddress,0)){
Serial.print("0");
}else{
Serial.print(tempc.getTempCByIndex(0),1);
}
Serial.println(">");
delay(1000);//<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
}
И как Вы хотите точно? Всё раздельно как в коде выше или в виде <data:0#0#0>?
__________________
Подсолнух (github) для авторегулировки яркости экрана по позиции солнца и синхронизации времени по GPS (v1.6 от 13.06.17)
Serial Manager для обработки данных с Arduino
Calls Assistant - замена TabletTalk
DelleTenebre is offline   Reply With Quote
Old 31-03-2016, 14:10   #228
Serg-Zmuh
Старший Пользователь
 
Serg-Zmuh's Avatar
 
Join Date: Feb 2014
Age: 55
Город: Ванино
Регион: 27
Машина: MMC-Pajero-II,V46,4М40
Posts: 327
Serg-Zmuh will become famous soon enough
Default

мне бы чтоб выводило на раздельные виджеты
__________________
MMC-Pajero ,Teyes CC3 ,все пока в процессе
Serg-Zmuh is offline   Reply With Quote
Old 31-03-2016, 14:33   #229
Максимэ
Новый Пользователь
 
Join Date: Sep 2008
Age: 42
Город: на работе
Регион: 38
Машина: 99\MMC\Pajero IO
Posts: 25
Максимэ is on a distinguished road
Default

Я был уверен, что не забудешь delay поставить. Должна обязательно быть пауза в 1сек, а то система будет виснуть, поэтому пишем 1000мс. delay(40) можно убрать, т.к. их добавили delay(50) в serial.print.
Code:
tempa.requestTemperatures();
tempb.requestTemperatures();
tempc.requestTemperatures();
Максимэ is offline   Reply With Quote
Old 31-03-2016, 17:35   #230
DelleTenebre
Старший Пользователь
 
Join Date: Jan 2015
Age: 34
Город: Бишкек
Регион: Казахстан
Машина: Subaru Outback
Posts: 163
DelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant future
Default

Serg-Zmuh, только что попробовал следующее:
В качестве экономии (да и не зря же они OneWire) цепляем датчики последовательно. Картинки во вложении (резистор 4.7 кОм).

Затем скетч:
Code:
const int ONE_WIRE_BUS = 3,//Пин куда подключаем сигнальный провод
          ONE_WIRE_UPDATE_SEC = 1;//Время опроса датчиков в секундах

#include <OneWire.h>
#include <DallasTemperature.h>

OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature temperatureSensors(&oneWire);

void setup() {
  Serial.begin(9600);
  while (!Serial) ;// Если Leonardo

  temperatureSensors.begin();
  temperatureSensors.setWaitForConversion(false);
}

void loop() {
  updateTemperature();
}

unsigned long lastTemperatureRequest = 0;
void updateTemperature() {
  if (millis() - lastTemperatureRequest >= ONE_WIRE_UPDATE_SEC * 1000) {
    temperatureSensors.requestTemperatures();
    
    for (int i = 0; i < temperatureSensors.getDeviceCount(); i++) {
      printTemperature(i);
    }

    lastTemperatureRequest = millis(); 
  }
}
void printTemperature(int index) {
  Serial.print("<temp" + String(index) + ":");
  Serial.print(temperatureSensors.getTempCByIndex(index), 1);
  Serial.println(">");
  delay(100);//Вот тут можно чуть больше или меньше
}
В результате, в зависимости от количества датчиков, Arduino будет выводить: <temp0:22.3> .. <temp1:32.3> .. <temp2:42.3> .. <temp0:22.3> .. <temp1:32.3> и т.д.

На двух датчиках (больше у меня нет) точно работает.
Attached Thumbnails
Click image for larger version

Name:	externally-powered.jpg
Views:	1090
Size:	66.1 KB
ID:	43276   Click image for larger version

Name:	dallas temp.jpg
Views:	716
Size:	271.2 KB
ID:	43277  
__________________
Подсолнух (github) для авторегулировки яркости экрана по позиции солнца и синхронизации времени по GPS (v1.6 от 13.06.17)
Serial Manager для обработки данных с Arduino
Calls Assistant - замена TabletTalk
DelleTenebre is offline   Reply With Quote
Reply

Tags
arduino


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off



All times are GMT +4. The time now is 12:55.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.