general
Подписаться на эту рубрику по RSS
Сеанс 42.Инструкция по работе с базой данных лент и файлов.
Рубрика: general | РуководстваДата: 09/08/2012 11:22:11
База данных состоит из таблицы информации о сеансах runinfo и таблиц сеансов run19,…,run42.
Таблица runinfo состоит из полей:
run — имя файла, например 42024028,сеанс 42 лента 24 файл 28;
date — время начала файла, например 2011-11-13 19:11:27;
enddate — время конца файла, например 2011-11-13 19:11:37;
type — тип файла, возможные типы файлов:
Calib_Ecal — калибровочный файл;
SLT — файл SLT;
TEST — файл проверки или изучения(например формы ливня);
Phys — физика;
energy— энергия пучка(по току в М15, см. также табл. Run-42), возможные флаги:
10.0 — номинальное 10 ГэВ;
27.0— номинальное 27 ГэВ;
-1.0— значения с большим отклонением от номинальных.
target— мишень,возможные флаги:
Be —бериллиевая мишень;
Empty — мишень отсутствует ;
UNK — неизвестная мишень.
magnet — магнит M13 (см. также табл. Run-42),возможные флаги:
0.0 — магнит выключен;
4000.0 — магнит включен, номинальное значение тока 4000 ;
-1.0 — значения с большим отклонением от номинальных.
spills — количество spills в файле, если 0 значение не заполнено;
events — количество events в файле, если 0 значение не заполнено;
size — размер файла в мегабайтах;
detflag — флаг состояния детектора, если -1 значит что-то не работало;
daqflag— флаг состояния DAQ, если -1 поломка DAQ;
comments— комментарии, поддерживают кириллицу, если проблемы с отображением поставить unicode (UTF-8) в настройках браузера.
period — номер сеанса, например RUN42;
Таблица run42 состоит из полей:
1) run — имя файла, например 42024028,сеанс 42 лента 24 файл 28;
2) beam — пучок; -1 - пучка не было значительную часть времени (файл пуст или частично пуст), либо аномально высокая интенсивность пучка.
3) energymean — пучок, среднее значение энергии пучка в ГэВ (в М15) за файл;
4) magnetmean — магнит, среднее значение тока в М13 за файл;
5) Trigmain — триггер main, -1 означает неполадки с основным триггером (в т.ч. с Guard-1 – внутренней «охранкой»);
6) Trigaux — -1 - неполадки с вспомогательными триггерами;
7) EMС —ЭМК, -1 - неполадки;
8) Tracking — -1 - неполадки с трековыми детекторами/системами;
9) Ch28 — МЧС, -1 - неполадки;
10) BCher —пучковые черенковские счётчики, -1 - неполадки;
11) Guard2 — (наружная) «сэндвич» - охранка, -1 - неполадки;
12) DAQ – ССД, -1 – неполадки.
Web странница таблиц находиться по адресу: http://pcbech.ihep.su/bec/runinfo.php.
Просмотр полной информации RUN42
Выберите количество строк, отображающихся на странице, сортировку( по возрастанию/по убыванию) и нажмите кнопку "submit" отправить.
Простой поиск таблица runinfo
Можно выбрать:
1)тип файла Calib_Ecal, phys, SLT и т.д., или All( все типы);
2)номер сеанса RUN19,RUN42 и т.д., или All( все типы);
3)количество строк, отображающихся на странице;
4)сортировку(по возрастанию/ по убыванию);
5)интервалы run и date.
Просмотр таблицы run42
Выберите количество строк, отображающихся на странице, сортировку( по возрастанию/по убыванию) и нажмите кнопку "submit" отправить. Отображает таблицу run42 с 20ой ленты.
Поиск по SQL запросам
Примеры SQL запросов:
1)
select run,date,type,energy,events,comments from runinfo where period="RUN42" and type = "phys" Запрос выбирает из таблицы runinfo поля run,date,type,energy,events,comments для period RUN42 и тип phys 2) select run,date,enddate from runinfo where period="RUN42" and type = "Calib_Ecal" and energy=10 and magnet=0;
period="RUN42" - 42рой сеанс;
type = "Calib_Ecal" - калибровочный файл;
energy = 10 - энергия пучка 10 ГэВ;
magnet = 0.
Примечание: в SQL запросах числовые переменные вводяться без кавычек например energy=10,а текстовые переменные и время в кавычках например period="RUN42";
Вывод таблиц runinfo и run42 в файл
Введите в поле SQL запрос из таблиц runinfo и/или run42,в конце запроса введите INTO OUTFILE и в кавычках путь к текстовому файлу и сам файл на pcbech.По умолчанию,если не прописать путь,файлы сохраняются на pcbech:/var/lib/mysq/bec/ .
Форма вывода
Форма вывода состоит из столбцов с названиями полей(run,date и т. д.),если нажать по имени столбца произойдёт сортировка.
Если нажать на кнопку строки 1,2... то откроется форма редактирования записи.
Форма редактирования записи
После изменения соответствующих полей нажать «update».
Внимание: кнопка «delete» удаляет запись из таблицы.
Полную информацию по сеансу 42 из обеих таблиц можно посмотреть перейдя по ссылке:
http://pcbech.ihep.su/bec/run42.php
К базе данных можно подключаться через С++ библиотеку с помощью кода:
1)Выделяем переменные:
MYSQL mysql; // дескриптор mysql
MYSQL_RES *res; // результирующая таблица
MYSQL_ROW row; // строки
mysql_init(&mysql); // инициализация
2)Коннект к базе данных:
mysql_options(&mysql,MYSQL_READ_DEFAULT_GROUP,"becdb");//выбор группы из .my.cnf
mysql_real_connect(&mysql,NULL,NULL,NULL,"bec",0,NULL,0);//коннект к БД "bec"
mysql_select_db(&mysql,"bec");//функция выбирает БД,в данном случае "bec"
3)Запрос к БД:
mysql_query(&mysql,"SELECT * FROM runinfo WHERE `period` =\"RUN42\";");
//функция посылает запрос в " ", в данном случае запрос select выводит все
(знак *) поля из таблицы runinfo, где `period` =" RUN42".
4)Получения результирующей таблицы:
res = mysql_store_result(&mysql); // функция возвращает результирующую таблицу;
mysql_num_rows(res); // функция возвращает количество строк;
row = mysql_fetch_row(res);// функция возвращает следующую (при первом применении
возвращает первую строку) строку(массив),где row[0] первый столбец из результирующей таблицы, row[1] второй столбец из результирующей таблицы и т. д.
5)Закрытие результирующей таблицы и БД:
mysql_free_result(res);//после освобождения памяти, можно отправлять новый запрос;
mysql_close(&mysql);
Примечание:
Подключение к БД настроено на pcbec2 для пользователя roger.Что бы настроить подключение под другим пользователем или на другом компьютере нужно скопировать файл .my.cnf(именно так с точкой) c pcbec2.ihep.su:/home/roger/.my.cnf в корневую папку своего пользователя.
Пример кода программы:
// connect mysql
MYSQL mysql;
MYSQL_RES *res;
MYSQL_ROW row;
mysql_init(&mysql);
if(&mysql == NULL)
{
fprintf(stderr, "Error: can't create MySQL-descriptor\n");
exit(1);
}
mysql_options(&mysql,MYSQL_READ_DEFAULT_GROUP,"becdb");
if(!mysql_real_connect(&mysql,NULL,NULL,NULL,"bec",0,NULL,0))
{
printf("Cannot connect to MySQL database: %s\n",mysql_error(&mysql));
return 1;
}
else
{
fprintf(stdout, "Success!\n");
}
if ( mysql_select_db(&mysql,"bec") )
{
printf("Cannot select database: %s\n",mysql_error(&mysql));
return 1;
}
else
{
fprintf(stdout, "Success!\n");
}
//mysql query
if(mysql_query(&mysql, "SELECT * FROM runinfo WHERE `crate`=\"RUN42\";") != 0)
printf("Error: can't execute SQL-query\n");
res = mysql_store_result(&mysql);
if(res == NULL) printf("Error: can't get the result description\n");
//result
if(mysql_num_rows(res) > 0)
{
while((row = mysql_fetch_row(res)) != NULL)
{
printf("%s ",row[0]);
printf("%s\n",row[1]);
}
}
mysql_free_result(res);
mysql_close(&mysql);
В Makefile добавить:
-I `mysql_config --include` `mysql_config --libs`
Скачать для распечатки в .pdf можно по этой ссылке ссылке
Дата _________ Смена _________ Время проверки ___________ ФИО ________
№ пп | Что/где | Статус/ значение | Норма |
На PC DCS (3 экрана) | |||
| Сигнал DCS в LabView звуковой/цветовой |
| Отсутствует |
| Столбец «Статус» в CAEN-Telnet на PC DCS |
| пуст |
| Прога FlowDDE |
| Запущена; обновляется красное поле Msg: |
На PC МОЭ (3 экрана) | |||
| Состояние У-70 |
| работает |
| Монитор светимости (27 мишень) |
| > 6 (*1011) / Время обновляется |
| Состояние канала 4Д (Клиент ПУ)/цвет |
| Вкл. ворота 0.5%, красного нет |
| Состояние M13 в «Клиент ПУ» |
| ворота 0.2%, красного нет |
На большом ТВ (3 зоны экрана) | |||
| Интенс. пучка S1*S2 (колонка T4, строка All на TL2 Auxiliary) |
| >1*106 |
| Временн’ые растяжка /структура пучка Положение gate |
| > 1 сек, равномерно Покрывает пучок |
| Состояние ССД : Статусы всех подсистем/Nresets/Nstarts Tape writer |
|
ОК/3/одинаковые Running |
Операторские проги/экраны | |||
| Выдача Onl-scalers @pcbec2: Т+/сброс Str*Anti/Str |
|
~104 0.62 – 0.66 |
| Передачана CASTOR @pcbec2 (/var/onl/data) |
| Регулярно Flushed |
| onl-hist @pcbec2: просмотр/спасение гистограмм |
| Периодически/2 раза в смену |
| Программа gams @pcbec5 (обычно в д.96) |
| Running, no error |
На среднем экране ASUS | |||
| Монитор <LED>, 3 кривых (LED,T, ОН) графики N(high), N (low) |
| текущее время; d<LED> ~ (- dT) ~ 5 шт. ~ 5 шт. |
| Графики стабильности счетов |
| пока не реализовано |
Стойки на проходе (С фонарём. Ориентир – желтый скотч) | |||
| Блок магнита |
| Горит зеленая лампа |
| ИП поджига LED |
| периодический писк считывания |
| Подпитка Sci |
| НЕ светит |
Расходомер фреона |
| 6 л/ч | |
Площадка на магните (Поле! С фонарем. Ориентир – желтый скотч) | |||
| P (Ar), одиночный манометр на магистрали |
| 3.5 < P < 5 атм |
| P (CH4), малый манометр на газ.пульте |
| 1 < P < 1.3 атм |
| метилаль в бочке (мерная трубка) |
| >3 л |
| Нагреватель 1 (плитка) |
| теплый |
| Булькалки (1,3,4, 7,8, 14, 11, 41, 42) |
| Булькают |
| ИП ATH – 3331 (стойка Ch-28) |
| Включен, периодически пищит |
| Показания рефрактометра (с точностью 1 полосы, для экспертов) |
| 2240 – 2280
|
Домик 14 (пультовая) (ориентир – желтый скотч) | |||
| Колл. К1 |
| +- (20—40) |
| Колл. К2 |
| +- (20—40) |
| Колл. К7 |
| +- (7—15) |
| Верт. корр. 4МК: вольтметр/LED |
| 0.06 / «вниз» |
| Затвор |
| открыт |
Газовая зона под домиком (с фонарём) | |||
| P(CH4) в баллоне в красном шкафу, левый манометр |
| > 0.5 МПа (~5 атм) |
| Давл. фреона, манометр на стене |
| 0.15< P <0.25 |
| Вес баллона с фреоном (по левому краю навесок) |
| > 60 кг |