Board.KolibriOS.org

Официальный форум KolibriOS
Текущее время: Сб дек 16, 2017 6:01 pm

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 194 сообщения ]  На страницу Пред. 19 10 11 12 13
Автор Сообщение
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Вт июн 18, 2013 1:25 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Чт май 30, 2013 5:56 pm
Сообщения: 31
Art_zh, спасибо, буду строить график красным 252-ым символом:
$FF0000.

10 В - это (в высоту) будет 300 пикселей, а U В -- 300*U/10=30*U пикселей.
Chislo_voltov_2:=round(30*chislo_voltov_1/100).

procedure Alg1;
Спойлер: Показать
Код:
procedure Alg1;
var s1,s2,s:string; x,y:dword;
begin
  x:=x+10;   
  s1:='#020';
  sc(s1);
  rc(s2);
  s[0]:=chr(5);
  s:=s2[3]+s2[4]+s2[5]+s2[7]+s2[8];
  y:=325-round((3*str5_to_num(s))/10);
  k.writeText(x,y,$FF0000,0,chr(252));
end;


function str5_to_num(s:string):dword;
Спойлер: Показать
Код:
function str5_to_num(s:string):dword;
var c:char; i,cif1,cif2,cif3,cif4,cif5,cif:dword;
begin
  for i:=1 to 5 do begin
    c:=s[i];
    case c of
      '0': cif:=0;
      '1': cif:=1;
      '2': cif:=2;
      '3': cif:=3;
      '4': cif:=4;
      '5': cif:=5;
      '6': cif:=6;
      '7': cif:=7;
      '8': cif:=8;
      '9': cif:=9;
    end;
    case i of
      1: cif1:=cif;
      2: cif2:=cif;
      3: cif3:=cif;
      4: cif4:=cif;
      5: cif5:=cif;
    end;
  end;
  str5_to_num:=10000*cif1+1000*cif2+100*cif3+10*cif4+cif5;
end;


Вот тут описаны контроллеры, в которые мы можем залить сами:
http://vrtp.ru/index.php?showtopic=2211&st=3960 :wink:

Итого: скада (на нехитром MODBUS'овом замесе) может строиться
с помощью 5ти процедур - на ассемблере, а остальное - на паскале.

SCADA (аббр. от англ. supervisory control and data acquisition, диспетчерское управление и сбор данных) — программный пакет, предназначенный для разработки или обеспечения работы в реальном масштабе времени систем сбора, обработки, отображения и архивирования информации об объекте мониторинга или управления.

Вот тут паскаль про:
http://diamond.kolibrios.org/hll/hll_eng.htm ,
но может быть и где-то здесь:
viewtopic.php?f=9&t=2353 .

Для подстыковки нового i7-модуля (кроме переходника) - в него втыкается перемычка (INIT* на землю), вследствие чего он становится на адрес 01 и скорость 9600, после чего в него можно залить новые настройки (адрес, скорость и др.) (соответствующей отсылаемой строкой), на которые он встанет после вынимания перемычки (при включённом питании перемычку вынимать пока не пробовал).

i7017


Вложения:
w545.PNG
w545.PNG [ 3.73 МБ | 1946 просмотров ]


Последний раз редактировалось VitZ Пн дек 15, 2014 3:45 pm, всего редактировалось 10 раз.
Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Чт июн 12, 2014 2:51 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Пн июн 09, 2014 4:04 am
Сообщения: 5
Я тут немножко флуд почитал и сообщения о пророках) По факту ОС хорошая но недопиленная нужен браузер который бы понимал криптографию... Тогда колибри будет везде у нас дорога... А на счет школ и промышленных предприятий задачча не самая сложная нужен энтузиазм коего у местных вагон и маленькая тележка и продвижение идеи в массы


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Пт июн 13, 2014 12:08 am 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Пт авг 14, 2009 1:46 am
Сообщения: 1291
che_shire@bk.ru писал(а):
По факту ОС хорошая но недопиленная нужен браузер который бы понимал криптографию...

Ты прочитал как топик называется?

Не ходи сюда.

_________________
Узкий специалист подобен флюсу: полнота его - односторонняя.
Козьма Прутков


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Пт июн 12, 2015 5:50 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Пт июн 12, 2015 5:44 pm
Сообщения: 6
art_zh писал(а):
Скорость конвейера какая?
Частота тахометра?
Период/скважность ШИМ?


Между мультиплексором-усилителем i7 и трёхфазным мотором можно поставить
Веспер EI-MINI.

PS. Перед включением СУПчика крепко-накрепко отключите комп от интернета: в лучшем случае вирус может просто всё стереть (или стереть всё с ОЗУ, если вы загружаетесь с фзз (флешки с защитой от записи)).

PS2. оба чёрных идут по двум винтам; тумблер с 6-ью контактами: красный туда-сюда и
жёлтый туда-сюда (без выключения компа "канал" не переключать).


Вложения:
45.jpg
45.jpg [ 20.97 КБ | 469 просмотров ]
Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Пт сен 22, 2017 11:29 am 
Не в сети
Аватара пользователя

Зарегистрирован: Пт июн 12, 2015 5:44 pm
Сообщения: 6
Если в местном паскале многозадачной среды проработаны указатели,
то можно легко сделать ручное dde, для обмена данными (допустим = значение датчика)
между двумя процессами (задачами=раньше их называли exe-модули) -
для отделения процесса "изображение" - от процесса "драйвера". Обмен между процессами - можно сделать -
через бОльшие промежутки времени, чем время основного цикла опроса (основной цикл опроса - в процессе "изображение").


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Сб сен 23, 2017 10:40 am 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1082
FedorAnullin писал(а):
Если в местном паскале многозадачной среды проработаны указатели
Не понятно, что подразумевается под местным паскалем? И как именно должны быть проработаны указатели?
FedorAnullin писал(а):
можно легко сделать ручное dde, для обмена данными (допустим = значение датчика)
между двумя процессами (задачами=раньше их называли exe-модули)
Ну вообще-то существуют системные функции для обмена данными между процессами(IPC, Shared Memory).


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Сб сен 23, 2017 3:37 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Пт июн 12, 2015 5:44 pm
Сообщения: 6
0CodErr писал(а):
... как именно должны быть проработаны указатели?

Смогу ли (без изучения ипц) перевести на местный (ссылка вверху этой страницы) паскаль
пример (реализованный на борланд паскале под виндус 98):
процесс номер один организует указателями несколько ячеек памяти в озу
и через винт (врайт фп - рид фп) передаёт начальный адрес этих ячеек второму процессу
(второй процесс должен будет запускаться раньше первого);
после запуска обоих второй пишет какие-то данные в эти ячейки с 5 по 14ю (и с 35 по 44ю)
секунду каждой минуты,
а второй читает данные из этих ячеек с 20 по 29ю (и с 50 по 59) секунду
каждой минуты. (?)

..Здорово, что в борланд-паскале(вин) изучение dde удалось избежать (обойти),
да и сомнения были - попортит ли (неручное) dde реальное время
(такое, какое в виндусе можно было организовать).


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Сб сен 23, 2017 6:58 pm 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1082
FedorAnullin писал(а):
ссылка вверху этой страницы
А, имеется в виду Pascal Pro.
FedorAnullin писал(а):
Смогу ли
Без исходного кода трудно сказать.
FedorAnullin писал(а):
процесс номер один организует указателями несколько ячеек памяти в озу
и через винт (врайт фп - рид фп) передаёт начальный адрес этих ячеек второму процессу
(второй процесс должен будет запускаться раньше первого);
после запуска обоих второй пишет какие-то данные в эти ячейки с 5 по 14ю (и с 35 по 44ю)
секунду каждой минуты,
а второй читает данные из этих ячеек с 20 по 29ю (и с 50 по 59) секунду
каждой минуты. (?)
Вообще у каждого процесса своё адресное пространство. Поэтому, чтобы писать именно "в эти ячейки", нужно использовать разделяемую память.

Лично я Pascal Pro не использую, я использую Borland Delphi7.
На форуме есть соответствующая тема с примерами Delphi7 examples viewtopic.php?f=33&t=3469

Цитата:
и через винт (врайт фп - рид фп) передаёт начальный адрес
Если быстродействие будет устраивать, то можно в принципе и всё "общение" проводить через файл на рам-диске(он и так в ОЗУ).

Без исходного кода трудно сказать, как в этом случае будет лучше поступить.


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Вс сен 24, 2017 6:54 am 
Не в сети
Аватара пользователя

Зарегистрирован: Пт июн 12, 2015 5:44 pm
Сообщения: 6
0CodErr писал(а):
Если быстродействие будет устраивать, то можно в принципе и всё "общение" проводить через файл на рам-диске(он и так в ОЗУ).

Для реальности времени (в случае увеличения скорости процессоров с каждым годом) важно
не быстродействие, а стабильность (чёткость, не расползаемость по оси времени, рассчитываемость
временных дельт с одной команды - до другой - хотя бы на максимум временного заполнения) выполняемых
процедур.

Исходник - на Борланд Паскале 7.01 (1993) под Виндоуз (1998) [без лицензий - ни
то, ни другое - не использовать! Опасно!]:

uses wintypes, winprocs, wincrt; {holst.pas}
var fp: file of pointer;
by: byte;
a_by: pointer;
begin
assign(fp, 'c:\bp\bin\7777777.dat');
reset(fp);
read(fp,a_by);
close(fp);
by:=a_by^; {}
writeln(by); {должно быть 77}
end.

uses wintypes, winprocs, wincrt; {drova.pas}
var fp: file of pointer;
by: byte;
a_by: pointer;
begin
a_by:=addr(by);
assign(fp, 'c:\bp\bin\7777777.dat');
rewrite(fp);
write(fp,a_by);
close(fp);
by:=77; {это PEREDACHA}
readln; {зависнуть - ждать второго}
end.

Наверное, ассемблерные вставки надо применить (чтобы стырить байт из соседского процесса).


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Вт сен 26, 2017 11:09 am 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1082
FedorAnullin писал(а):
чтобы стырить байт из соседского процесса
Я ведь писал уже
0CodErr писал(а):
Вообще у каждого процесса своё адресное пространство. Поэтому, чтобы писать именно "в эти ячейки", нужно использовать разделяемую память.
Если это так сложно то
0CodErr писал(а):
Если быстродействие будет устраивать, то можно в принципе и всё "общение" проводить через файл на рам-диске(он и так в ОЗУ).
Один процесс пишет в файл на рам-диске, другой процесс читает из него.


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Вт сен 26, 2017 1:47 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Пт июн 12, 2015 5:44 pm
Сообщения: 6
0CodErr писал(а):
Один процесс пишет в файл на рам-диске, другой процесс читает из него.
А где посмотреть примерец как средствами Pascal Pro записать запись в файл на рам-диске (не придётся ли ассемблерные вставки ужо - то есть покамест - применить)?


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Вт сен 26, 2017 2:26 pm 
Не в сети

Зарегистрирован: Вт мар 08, 2016 11:00 pm
Сообщения: 269
Еще бы найти того, кто этот ПаскальПро проверит на работоспособность..


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Вт сен 26, 2017 2:34 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Пт июн 12, 2015 5:44 pm
Сообщения: 6
FedorAnullin писал(а):
А где посмотреть примерец как средствами Pascal Pro записать запись в файл на рам-диске (не придётся ли ассемблерные вставки ужо - то есть покамест - применить)?
.. хотя что-то в нём проклёвывается - и не придётся (надо будет серию программных экспериментов сделать).


Вложения:
system-obd.JPG
system-obd.JPG [ 77.56 КБ | 193 просмотра ]
Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Вт сен 26, 2017 3:56 pm 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1082
FedorAnullin писал(а):
А где посмотреть примерец как средствами Pascal Pro записать запись в файл на рам-диске
Если хочется ковыряться именно с этим паскалем, то это дело хозяйское, конечно.
Но для Borland Delphi7 существуют примеры чтения и записи.
Необходимые функции объявлены в KolibriOS.pas и реализованы в KolibriOS.lib, которая уже в некоторой степени протестирована.
Вот так функции могут быть вызваны:
Код:
ReadFile(Path, Buffer, Count, LoPos, HiPos, BytesRead);
WriteFile(Path, Buffer, Count, LoPos, HiPos, BytesWritten);
Siemargl писал(а):
Еще бы найти того, кто этот ПаскальПро проверит на работоспособность..
Маловероятно, что можно такого найти. Я лично понятия не имею, работает ли там что-то, и насколько правильно оно реализовано.


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 194 сообщения ]  На страницу Пред. 19 10 11 12 13

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB