Полная версия страницы  English  

Patchclamp.net : запись ионных каналов под Linux

Salsero, 11.02.2013 22:15
user posted image

Коллеги, я наконец заканчиваю свой проект - программу для записи ионных каналов (PatchClamp.net). Публичную бета-версию, которая позволяет записывать одиночные каналы, уже можно скачать с SourceForge. Скорее всего, до марта-апреля будут доделаны ramp-ы и другие протоколы для регистрации токов от целой клетки. Программа пишет файлы .ABF версии 1.83, и рассчитана на оцифровку сигнала с частотой от 1 до 10 кГц, длительностью не более 1 часа.

Основная цель проекта - сделать программу максимально удобной для исследователей, которые не являются специалистами в программировании и не хотят тратить слишком много времени на обработку и отрисовку экспериментов.

По традициям GNUтого программирования, программа сама по себе бесплатна, а поддержка и помощь в настройке - нет.

Если есть вопросы, пишите, постараюсь ответить. Если у вас есть желание присоединиться - будем более чем рады (с недавних пор нас в команде уже двое).
Flyamer, 12.02.2013 00:45
Ооо интересует, подписался пока что на тему.

Интересно, почему такие высокие требования по железу...
Salsero, 12.02.2013 07:15
Я бы не сказал, что требования высокие в том смысле, что машинка нужна дорогая.
К примеру, должно хватить:

процессор боксовый А4 -1400 р
материнка микроАТХ - 1700 р
память 2 Гб - 400 р
Корпус с правильным БП 1700 р. (корпус может быть почти любой, а вот блок питания рекомендую не самый дешевый производства FSP , они пока не подводили ни разу)
Жесткий диск - любой, еще 1500 р.
Клавиатура и мышь - обойдутся еще рублей в 500.
дисплей еще 4000 р

Всего 11200 р.

Плата АЦП по сравнению с этим - будет стоить тысяч 15 рублей минимум. А AxoPatch 200B будет стоить все 40 тысяч, наверное. И манипулятор тысяч 20-30.

Я уж не говорю, что можно использовать любой Pentium D / Core2Duo/ Athlon X2 пятилетней давности, только памяти добить до гигабайта-двух.

Т.е. собственно компьютерная часть стоит очень недорого.
-----------------------
Требования к компьютеру довольно высоки, чтобы не заморачиваться работой на дохлом железе. Самый первый вариант этой программы 15 лет назад работал на 486/33, с мегабайтом оперативки. Но под MS-DOS. Правда от того кода в программе осталось очень мало.

Почему нужно минимум два ядра - на одном крутится нить, опрашивающая АЦП,на другом интерфейс. Хорошо бы иметь еще 1-2 ядра в запасе.
Да, и еще - программа ничего не пишет на диск в ходе эксперимента. Вся запись - только после его окончания. Именно поэтому памяти должно хватать с избытком.
guest: Евген , 12.02.2013 17:32
А железяки у вас свои или от Axon'а?
Salsero, 12.02.2013 17:40
Программу можно настроить на любой усилитель, даже на РОК-3М. smile.gif Для этого требуется не более чем прописать в таблицах соответствующий набор констант.

Пока что настройка на усилитель реализована для Warner PC-501A и AxoPatch 200.

DigiData программа пока не поддерживает. Если раздобудем библиотеку для интерфейса - будем поддерживать и её. Аналогично для других плат, не поддерживаемых comedi.

При определенных условиях программа, возможно, будет перекомпилирована и под Windows.

Для разработки я пользуюсь платой National Instruments (6221).
guest: Евген , 12.02.2013 18:14
Будете ли делать поддержку протоколов (ну эти ступеньки как pClamp'е)?
А может ну его вообще этот abf формат - сразу в ASCII а потом тупо в Origin?
smile.gif Или вы-таки хотите пользовать Clampfit для работы с полученными данными

Я в свое время в досе сделал еще тупее - порт выставляет все время
оцифрованное значение, а ты читаешь его через символьный драйвер
Salsero, 12.02.2013 19:02
Протоколы - будем, довольно скоро.

Писать нет проблем в любой формат. Если он открытый и документированный.

Делать прямую вставку через текст в Origin планов пока нет. Дело в том, что при записи одиночных каналов в Origin вставляется далеко не весь файл, а лишь фрагменты. Иначе он тормозит по черному. Но, в принципе, это не нереально. Нужно будет написать просматривалку .abf с экспортом через копи-пэйст.

Кстати - после записи программа генерирует вклейку в лабораторный журнал (прикреплен пример). Ее можно печатать непосредственно после записи эксперимента.

Разумеется, это не финальный вариант. Дополируем ещё.


Файл/ы:

скачать файл print648.pdf
размер: 30.2
кол-во скачиваний: 497


Flyamer, 12.02.2013 19:41
Протоколы обязательно нужны.

Нет, ориджин не вариант, далеко не все в нем работают. Для обработки, кстати, могу посоветовать открытую программу Stimfit.

Вклейка прикольная!
Salsero, 12.02.2013 20:07
Я просто не раз наблюдал, как после опыта человек тратит чуть ли не часы для отрисовки простого эксперимента.

Это полный chickensh*t.

Протоколы, повторюсь, в ближайших планах.

Мы пока зарегистрировались в проекте NeuroDebian, и надеемся скоро стать его полноправной частью.
Flyamer, 12.02.2013 20:32
(Salsero @ 12.02.2013 21:07)
Ссылка на исходное сообщение Это полный chickensh*t.


Это Вы о чем? О Stimfit? Почему? Там, конечно, весь сок в скриптах на Питоне, просто в ГУЕ маловато возможностей пока что.
Salsero, 12.02.2013 21:36
Стимфит - как я понимаю, только о EPSP. У нас пока главное - одиночные каналы.
Flyamer, 12.02.2013 21:44
Совсем нет! Для одиночных каналов не знаю, но для VC ооцитов я его использовал, достаточно удобно. И, главное, за счет скриптов позволяет массовую обработку файлов делать, что в моем случае было очень полезно.
Salsero, 12.02.2013 21:51
Ну, у нас в планах скорее полуавтоматическая обработка ramp-ов, т.е. выделили baseline ramp,
вычли из последующих, расставили маркеры типичных рэмпов, тут же отрисовали в журнал черновой рисунок - развитие тока при нескольких потенциалах, типичные рэмпы.
И можно писать следующую клетку тут же.
Flyamer, 12.02.2013 22:00
Понятно. Мы рэмпы не пишем, степами меряем. Ну, и у нас не одиночные каналы, так что специфика другая. Но, надеюсь, программа со временем станет более универсальной?
Salsero, 12.02.2013 22:34
Да, разумеется. Если вам захочется ею пользоваться, и вы захотите свои какие-то специальные фишки - обращайтесь.У нас в ближайших планах кроме рампов - p/4. Исходники будут на SourceForge, бинарники тоже.

Если я нигде не акцентировал это: идеология очень проста: если ты пишешь какой-то эксперимент,
1) на экране должен видеть только то, что нужно, чтобы его записать.
2) на экране должно быть все, чтобы оценить его ход максимально качественно.

То есть - минимальный онлайн анализ тоже входит в планы.
Flyamer, 12.02.2013 22:38
Ясно, спасибо! Пока что необходимости нет, но всегда интересно узнать об альтернативах. Да и для линукса это, кажется, единственная такая программа?
Salsero, 12.02.2013 22:43
Не совсем. Есть гораздо более навороченные варианты, к примеру RTXI

У них жесткий риалтайм. Наша задача - быть проще и удобнее для конкретного пользователя. Возможно, я не прав, но написание скриптов для большинства электрофизиологов - мне кажется, темный лес.
Flyamer, 12.02.2013 22:49
Да, там жесть какая-то, это точно.

Да, конечно темный лес. Но я вообще не профессиональный электрофизиолог (да и вообще никто не профессиональный еще), а питон учу - вот и оказалось очень удобно.
guest: Евген , 13.02.2013 06:09
Axon задачу real-time как-то решил.
В т.ч. на уровне доса. А сейчас они, ЕМНИП,
вообще все свои железки через USB с компом
соединяют, где протокол по определению не
самый быстрый
Salsero, 13.02.2013 09:37
Ну, еслти плата АЦП умная, то острота вопроса несколько снижается.
В нашем случае просто мы берем большой избыток процессорной мощности, и избегаем отвлечения на посторонние дела, типа записи на диск.
guest: Евген , 13.02.2013 12:37
У меня плата АЦП была тупа донельзя. Она сидела в IDE слоте и выставляла 16 битовое значение в 2 порта. Еще бит - готовность. Касательно задержек записи на диск: кто мешает содать электронный диск в ОЗУ? IMHO лучше разрулить многозадачность на уровне проца и сделать 2 процесса. Один работает с контроллером, другой - кладет данные в открытый файл, лежащий на виртуальном диске. Эксперимент закончили, файл закрыли.
Salsero, 13.02.2013 12:44
В программе два потока, один постоянно крутит опрос АЦП, скидывает прочитанное в большой буфер в ОЗУ, и выставляет на ЦАП нужные значения; другой поток занимается интерфейсом. Я не вижу смысла дополнительно разделять одну программу на 2 процесса.

Память сейчас очень дешева. Ну и нечего её жалеть. Как нечего жалеть гигагерцы и ядра.
guest: Евген , 13.02.2013 13:29
Да, но на каждый поток вы хотите отвести по ядру процессора. Я правильно понял? Это что, специфика той либы, поверх которой у вас все крутится? Не жирно ли будет?
Salsero, 13.02.2013 14:05
Насколько я помню специфику Linux - в нем потоки организованы как процессы.
Жирно... ну сейчас самая дешевая четырехкорка - это Athlon II X4 . Я бы не сказал, что это - дорого или много.

Во время записи эксперимента все равно нельзя заниматься ничем, кроме записи эксперимента.
guest: Евген , 13.02.2013 14:33
Я в процессе эксперимента (Clampex 9, gap-free, 2 часа нон-стоп) слушал музон и гонял антивирус. Железо - самое среднее - P4, 2 гига ОЗУ. 2 миллисекунды sampling rate. Никаких проблем. ЧЯДНТ? Все под мастдаем, разумеется
guest: Евген , 13.02.2013 14:35
http://rabota.mail.ru/resume/25a4673cff016...d1f435844526d56
Дабы не казаться троллем
Salsero, 13.02.2013 14:47
2 миллисекнды- это 500 Гц. Мягко говоря, не очень быстро. И вы, как я понимаю, пользовались очень недешевым софтом, и железом.

Мы ориентируемся пока на основную частоту в 5 кГц. Пока в ходе практической работы не выяснятся реальные требования - что-то говорить рано.

Пошел писать тестовые эксперименты.
guest: Евген , 13.02.2013 15:23
Axopatch 1D. Позавчерашнее. Из софта - Clampex и Clampfit 9, качаются бесплатно.
ИМХО вы сделали великое дело, расковыряв формат abf файла, соот-нно можно будет анализировать данные на Clampfit'е. Согласитесь, это неплохое решение. Позволю себе заметить: если вы выложите инструкции по сборке и настройке усилителя (разводка платы, элементная база, как поцепить headstage), как все это сделать в законченной коробке, будет подвиг
guest: Евген , 13.02.2013 15:28
Пардон, соврамши. 200 микросекунд
Salsero, 13.02.2013 16:32
Записать в формате ABF дело не великое - он задокументирован, и анализ действительно планируется в аксоновском софте.

Подвиги не планируются. В том числе выпивание моря (если я правильно понял намек). Задача проекта проста - чтобы было удобно писать эксперименты, и не отдавать за это кучу денег.
Salsero, 22.02.2013 19:46
Браузер в параллель с оцифровкой запустить можно, во всяком случае. Но лучше не надо.


Картинки:
картинка: hardware.jpg
hardware.jpg — (80.78)   

PS2004R, 23.02.2013 14:59
(Flyamer @ 12.02.2013 22:38)
Ссылка на исходное сообщение  Ясно, спасибо! Пока что необходимости нет, но всегда интересно узнать об альтернативах. Да и для линукса это, кажется, единственная такая программа?


http://www.comedi.org/applications.html
Salsero, 14.05.2013 22:10
Обновились до новой подверсии. Говорят, на Pentium D работает нормально. Я пока ловлю глюки на Athlon X2.
Flyamer, 05.06.2013 22:18
Я хотел установить себе и попробовать - так что же, .deb пакетов нету? frown.gif Или я не нашел?
Flyamer, 06.06.2013 21:53
И еще. Есть ли шанс, что Вы добавите поддержку АЦП от L-Card? Драйвера для Линукса у них есть, но в Comedi их нет в списке, вроде.
Salsero, 03.07.2013 08:21
.deb пакетов нет, когда-нибудь будут. Поможете их сделать - будут быстрее.

У L-card с поддержкой Linux плохо. А у меня нет времени это делать. Думаю, что если кто-то захочет перекомпилировать под Qt|Windows, и вставит поддержку их библиотеки - будет работать и с их АЦП.

-------------------
Да - у нас обновление, выложена версия 0.99. Уже почти совсем не бета smile.gif

P.S. Переезжаю в Англию через неделю, разработка замораживается.
Anita123, 23.12.2019 09:55
(guest: Евген @ 13.02.2013 14:35)
Ссылка на исходное сообщение  http://rabota.mail.ru/resume/25a4673cff016...d1f435844526d56
Дабы не казаться троллем


Сайт rabota.mail давно перестал работать, да и там вакансии не очень были, сейчас все городработ хвалят. Мне помог в поиске работы https://gorodrabot.ru/. На этом сайте еще много полезной информации по рынку труда
guest: 123 , 31.05.2022 09:11
SINCE LAUNCHING AMB CASINO HIS INVASION OF UKRAINE, RUSSIA'S FC SLOT PRESIDENT VLADIMIR PUTIN 88KTC HAS FACED AN UNPRECEDENTED 11HILO GLOBAL RESPONSE, FROM CULTURAL BOYCOTTS TO 123GOAL COUNTRIES RADICALLY 123VEGA TRANSFORMING THEIR ALLBET FOREIGN POLICIES. BUT THE สูตรสล็อต LONGER THE CONFLICT CANDY BURST GOES ON, THE MORE SIGNS THERE ปั่นสล็อต ARE OF DIVISIONS.
guest: 123 , 08.06.2022 12:58
South Korea 123VEGA and the US launched WAZDAN eight missiles WM CASINO on Monday, in AFFILIATE response to a ลิงค์รับทรัพย์ volley of ballistic missiles fired by North Korea the 123GOAL previous day. It comes 88KTC as Pyongyang continues FC SLOT to escalate its AMB CASINO missile tests. South 11HILO Korea's president Yoon Suk-yeol.
guest: 123 , 09.06.2022 09:35
Elon Musk has 123VEGA threatened to เกมสล็อต walk away from his JOKER GAMING $44bn takeover DREAMGAMING of Twitter, accusing เล่นสล็อต the social media company of "thwarting" his 11HILO requests to learn AMB CASINO more about its user base. In a letter filed FC SLOT with regulators, Mr Musk 88KTC said he was entitled 123GOAL to do his own measurement of spam accounts.
guest: 123 , 11.06.2022 10:35
Saxon Mullins 123VEGA says she once had PRAGMATIC PLAY romantic dreams of what her 'first time' would ICONIC GAMING be like. In none was หวยปิงปอง she paralysed by fear in a Sydney ปั่นสล็อต alleyway, aged 18, with a 123GOAL man she had met only minutes earlier. Ms 88KTC Mullins has always maintained FC SLOT this incident - in 2013 - was rape. It spurred AMB CASINO her to push for legal 11HILO reform in Australia, after a long court battle ended with a judge finding the man involved did not realise she hadn't consented to sex.
Это — лёгкая версия форума. Чтобы попасть на полную, щелкните здесь.
Invision Power Board © 2001-2024 Invision Power Services, Inc.