Перейти к содержанию
    

Ixt

Свой
  • Постов

    76
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный

Информация о Ixt

  • Звание
    Частый гость
    Частый гость
  • День рождения 16.04.1985

Старые поля

  • skype
    Array

Контакты

  • Сайт
    Array
  • ICQ
    Array

Информация

  • Город
    Array
  1. Это значит не надо их переставлять в ручном режиме. Во сколько вы оцениваете себестоимость девайса на ~100 сим-карт в таких условиях?
  2. Те сим банки из Интернета - более сложные и дорогие устройства. Большая часть их функционала не нужна в этом проекте. ПО всё равно нужно своё, а то что с ними поставляется будет скорее не достоинством, а препятствием.
  3. Речь про работу в режиме полного рабочего дня. С соответствующей оплатой. Если надо подождать изготовление/пересылку плат, а вам ну совсем-совсем нечем заняться, так что задержка не по вашей вине происходит. Ну чтож, это время не оплачивается, но думаю подождать можно. На этом форуме много готовых специалистов, речь про самообучение не идёт.
  4. Есть идея сделать устройство, позволяющее работать с большим количеством симок(ну скажем до 50-100) без необходимости их перекоммутации. Под работой с симками понимается зарегистрироваться в сети, отправить/принять смс и ussd, закодировать/декодировать их на русский язык, никакого голоса и прочих наворотов. Достаточно поддержки 2G и опционально 3G(для оператора Теле2 в Москве). На борту устройства должнен быть один или какое-то небольшое количество модемов. Симка подключается к модему. Отправляем несколько SMS/USSD, дожидаемся ответа, передаём ответ на компьютер. Для ускорения процесса это можно делать не на одном модеме. Симка отключается, подключаем следующую на этот модем и т.д. За какое-то небольшое время,ну скажем полчаса нужно перекоммутировать и отправить однотипные команды со всех SIM карт. Желательно чтобы устройство было более-менее компактно в размерах и по себестомости изготовления было не более 5-10 тысяч рублей. Меньше - лучше. Можно подумать о том, чтобы оно влезало в какой-либо типовой корпус, но не обязательно. Связь с компьютером по USB/Ethernet - обсуждаемо. ПО проекта состоит из двух частей - прошивка контроллера девайса и ПО на комьютере. Основной функционал будет реализован на компьютере, от прошивки требуется коммутировать SIM-карты и организовать полнофункциональный канал связи между модемом(ми) и компьютером. ПО компьютера, видимо, не предмет данного задания. Ещё хотелось бы масштабируемость. Сегодня работаем с 64 SIM. Подключить ещё 8 - не вопрос, вставляем платку с этими SIM. Может быть, надо сделать маленькую платку на 8/16 SIM с USB-интерфейсом, которых в проекте будет несколько и все эти платки чтобы подключались к основной модемной плате. На выходе необходим: - рабочий прототип - комплект конструкторской документации(схемы, исходники) - небольшая программа-прототип для компьютера, демонстрирующая, что мы можем сделать активной симку с таким-то номером и поработать с ней, а потом с другой - И как пример информация о том где что купить, где заказать мелкосерийное изготовление(до нескольких десятков устройств). Думаю 2-3 месяца на выполнение проекта - достаточный срок. Предлагаю обсудить здесь этот проект. Кто может взяться и за какой бюджет? Что требуется пояснить?
  5. Да, действительно, мой косяк. LaTeX в совершенстве увы не знаю. Работаю с ним хоть и давно, но эпизодически. Большое спасибо вам за проделанную работу!
  6. Может ему поля для комментария не хватает? Всегда оставляет себе место, что бы в последствии пометить что-нибудь карандашиком. Ещё заметил, что текст в примечание не вставляется. То есть у команды Element 4 параметра. И если вот такое \Element{Розетка SMA-BJ}{\refbox{XS1,XS2}}{2} заменить на примерно такое \Element{Розетка SMA-BJ}{\refbox{XS1,XS2}}{ttt} То ttt попадает в 1-ый столбец новой строки, а не последний текущей.
  7. \smallit похоже уже отсутствует. Его даже grep не находит в исходниках. С помощью fontspec пофиксил шрифт всех надписей. Теперь всё хорошо. И ещё есть кое-что. Я ваш стиль использую для создания перечня элементов. Если прописать 2 и больше строк \Element подряд, то в выходном файле будут пустые строки. Не знаю, зачем вы это сделали? Может пустые строки нужны при разбивке перечня на страницы и без этого никак? Мне как-то привычнее без них. Нашёл реализацию этой команды: \newcommand{\Element}[4][]{% Добавить элемент % #1 - примечание (необязательно), % #2 - наименование, % #3 - позиционное обозначение, % #4 - количество \Line{\largeit #3}{#2}{#4}{#1}% \tabularnewline% }% Чисто интуитивно мне понятно, что делает \tabularnewline. Убрал и теперь перечень стал что надо, не хуже чем в КОМПАСе. :disco: Можно забить на глючащий под вайном КОМПАС и запихнуть этот перечень в меркуриал. Похоже, что буду пользоваться.
  8. Vadim, а подскажите, что можно сделать, если фамилия не влезает в отведённое поле? Не то чтобы она длинная, но сокращать не хочется. Помнится, КОМПАС в таком случае шрифт как-то сжимал по горизонтали, но за пределы поля не позволял выходить. И в \NameSet мне хочется текста побольше задать, но не получается по той же причине.
  9. Спасибо, эта версия вроде работает. Но стандартных библиотек нет и где их брать? Не всё ж самому рисовать? Тут в соседних темах читаю, что в последние месяцы намудрили со всем. этим.
  10. Доброго всем дня. После долгого перерыва приходится опять возврвщаться с печатным платам. До этого работал с PCAD (очень давно) и Eagle. В этот раз хочется стартануть с более православным CAD'ом, поэтому обращаю свой взор на KiCAD. Работаю в Debian Jessie + Mate. Сперва поставил программу из репозиториев Jessie. На пустом месте начало ругаться какими-то ассёртами в GTK. Снёс нафиг. Потом скачал с офиц. сайта скрипт kicad-install.sh Вроде всё работает, но УГО некоторых элементов приводит в уныние. Дальше забрёл сюда. Склонировал https://code.launchpad.net/~kicad-gost-comm...ers/kicad/kicad Собрал вот так: export CXXFLAGS="-m64" cmake -DCMAKE_BUILD_TYPE=Debug -DwxUSE_UNICODE=ON -DKICAD_GOST=ON -DKICAD_STABLE_VERSION=ON -DKICAD_GOST=ON -DCMAKE_INSTALL_PREFIX=/opt/kicad .. Boost выкачало и собрало, но почему-то матюкнулось: gcc.compile.c++ bin.v2/libs/regex/build/gcc-4.8/release/link-static/threading-multi/winstances.o gcc.compile.c++ bin.v2/libs/regex/build/gcc-4.8/release/link-static/threading-multi/usinstances.o gcc.archive bin.v2/libs/regex/build/gcc-4.8/release/link-static/threading-multi/libboost_regex.a common.copy /home/sergey/tmp/kicad/boost_root/lib/libboost_regex.a common.mkdir bin.v2/libs/thread/build/gcc-4.8/release/link-static common.mkdir bin.v2/libs/thread/build/gcc-4.8/release/link-static/threading-multi common.mkdir bin.v2/libs/thread/build/gcc-4.8/release/link-static/threading-multi/pthread gcc.compile.c++ bin.v2/libs/thread/build/gcc-4.8/release/link-static/threading-multi/pthread/thread.o In file included from ./boost/bind/bind.hpp:29:0, from ./boost/bind.hpp:22, from ./boost/thread/detail/thread.hpp:29, from ./boost/thread/thread_only.hpp:22, from libs/thread/src/pthread/thread.cpp:11: ./boost/bind/arg.hpp: In constructor ‘boost::arg<I>::arg(const T&)’: ./boost/bind/arg.hpp:37:22: warning: typedef ‘T_must_be_placeholder’ locally defined but not used [-Wunused-local-typedefs] typedef char T_must_be_placeholder[ I == is_placeholder<T>::value? 1: -1 ]; ^ In file included from ./boost/tuple/tuple.hpp:33:0, from ./boost/thread/detail/async_func.hpp:37, from ./boost/thread/future.hpp:22, from libs/thread/src/pthread/thread.cpp:19: ./boost/tuple/detail/tuple_basic.hpp: In function ‘typename boost::tuples::access_traits<typename boost::tuples::element<N, boost::tuples::cons<HT, TT> >::type>::const_type boost::tuples::get(const boost::tuples::cons<HT, TT>&)’: ./boost/tuple/detail/tuple_basic.hpp:228:45: warning: typedef ‘cons_element’ locally defined but not used [-Wunused-local-typedefs] typedef BOOST_DEDUCED_TYPENAME impl::type cons_element; ^ gcc.compile.c++ bin.v2/libs/thread/build/gcc-4.8/release/link-static/threading-multi/pthread/once.o In file included from ./boost/bind/bind.hpp:29:0, from ./boost/bind.hpp:22, from ./boost/thread/pthread/once_atomic.hpp:19, from ./boost/thread/once.hpp:20, from libs/thread/src/pthread/./once_atomic.cpp:9, from libs/thread/src/pthread/once.cpp:8: ./boost/bind/arg.hpp: In constructor ‘boost::arg<I>::arg(const T&)’: ./boost/bind/arg.hpp:37:22: warning: typedef ‘T_must_be_placeholder’ locally defined but not used [-Wunused-local-typedefs] typedef char T_must_be_placeholder[ I == is_placeholder<T>::value? 1: -1 ]; ^ gcc.compile.c++ bin.v2/libs/thread/build/gcc-4.8/release/link-static/threading-multi/future.o gcc.archive bin.v2/libs/thread/build/gcc-4.8/release/link-static/threading-multi/libboost_thread.a common.copy /home/sergey/tmp/kicad/boost_root/lib/libboost_thread.a ...updated 10859 targets... [ 36%] No install step for 'boost' [ 36%] Completed 'boost' [ 36%] Built target boost Makefile:136: recipe for target 'all' failed make: *** [all] Error 2 Ну да ладно, после перезапуска make шоу продолжилось и никаких ошибок больше не выдало. После make install KiCAD запускается, но падает при попытке запуска редактора схем: Starting program: /opt/kicad/bin/./kicad warning: no loadable sections found in added symbol-file system-supplied DSO at 0x7ffff7ffa000 warning: Could not load shared library symbols for linux-vdso.so.1. Do you need "set solib-search-path" or "set sysroot"? [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". LIB_ENV_VAR:'/opt/kicad/bin' configCreate SEARCH_STACK: [ 0]:/home/sergey/code/imx6/imx6_router/secondary_psu/pcb [ 1]:/opt/kicad/share/kicad/template [ 2]:/usr/local/share/kicad/template [New Thread 0x7fffe33b0700 (LWP 32717)] kiface SEARCH_STACK: [ 0]:/opt/kicad/share/kicad/template [ 1]:/usr/local/share/kicad/library [ 2]:/usr/local/share/kicad/template [ 3]:/usr/local/share Program received signal SIGSEGV, Segmentation fault. 0x000000000046a3dc in KIFACE_I::KifaceSettings (this=0x0) at /home/sergey/tmp/kicad/include/kiface_i.h:102 102 wxConfigBase* KifaceSettings() const { return m_bm.m_config; } (gdb) bt #0 0x000000000046a3dc in KIFACE_I::KifaceSettings (this=0x0) at /home/sergey/tmp/kicad/include/kiface_i.h:102 #1 0x00007fffe279f989 in EDA_DRAW_PANEL::EDA_DRAW_PANEL (this=0x9ad200, parent=0x9a8d70, id=-1, pos=..., size=...) at /home/sergey/tmp/kicad/common/draw_panel.cpp:127 #2 0x00007fffe279b057 in EDA_DRAW_FRAME::EDA_DRAW_FRAME (this=0x9a8d70, aKiway=0x6d8b60 <Kiway>, aParent=0x774200, aFrameType=FRAME_SCH, aTitle=..., aPos=..., aSize=..., aStyle=541335104, aFrameName=...) at /home/sergey/tmp/kicad/common/draw_frame.cpp:163 #3 0x00007fffe2706810 in SCH_BASE_FRAME::SCH_BASE_FRAME (this=0x9a8d70, aKiway=0x6d8b60 <Kiway>, aParent=0x774200, aWindowType=FRAME_SCH, aTitle=..., aPosition=..., aSize=..., aStyle=541335104, aFrameName=...) at /home/sergey/tmp/kicad/eeschema/sch_base_frame.cpp:37 #4 0x00007fffe273bd27 in SCH_EDIT_FRAME::SCH_EDIT_FRAME (this=0x9a8d70, aKiway=0x6d8b60 <Kiway>, aParent=0x774200) at /home/sergey/tmp/kicad/eeschema/schframe.cpp:190 #5 0x00007fffe26992c6 in SCH::IFACE::CreateWindow (this=0x7fffe2b89000 <SCH::kiface>, aParent=0x774200, aClassId=0, aKiway=0x6d8b60 <Kiway>, aCtlBits=2) at /home/sergey/tmp/kicad/eeschema/eeschema.cpp:84 #6 0x0000000000472c32 in KIWAY::Player (this=0x6d8b60 <Kiway>, aFrameType=FRAME_SCH, doCreate=true) at /home/sergey/tmp/kicad/common/kiway.cpp:291 #7 0x000000000045637c in KICAD_MANAGER_FRAME::OnRunEeschema (this=0x774200, event=...) at /home/sergey/tmp/kicad/kicad/mainframe.cpp:296 #8 0x00007ffff692fa86 in wxEvtHandler::ProcessEventIfMatches(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) () from /usr/lib/x86_64-linux-gnu/libwx_baseu-2.8.so.0 #9 0x00007ffff692fb2b in wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) () from /usr/lib/x86_64-linux-gnu/libwx_baseu-2.8.so.0 #10 0x00007ffff692fe97 in wxEvtHandler::ProcessEvent(wxEvent&) () from /usr/lib/x86_64-linux-gnu/libwx_baseu-2.8.so.0 #11 0x00000000004672d0 in EDA_BASE_FRAME::ProcessEvent (this=0x774200, aEvent=...) at /home/sergey/tmp/kicad/common/basicframe.cpp:131 #12 0x00007ffff692fe20 in wxEvtHandler::ProcessEvent(wxEvent&) () from /usr/lib/x86_64-linux-gnu/libwx_baseu-2.8.so.0 #13 0x00007ffff709ffc9 in wxWindowBase::TryParent(wxEvent&) () from /usr/lib/x86_64-linux-gnu/libwx_gtk2u_core-2.8.so.0 #14 0x00007ffff709ffc9 in wxWindowBase::TryParent(wxEvent&) () from /usr/lib/x86_64-linux-gnu/libwx_gtk2u_core-2.8.so.0 #15 0x00007ffff6ffdddc in ?? () from /usr/lib/x86_64-linux-gnu/libwx_gtk2u_core-2.8.so.0 #16 0x00007ffff3cb85e7 in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #17 0x00007ffff3cd1088 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #18 0x00007ffff3cd1ce2 in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #19 0x00007ffff508f3f5 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #20 0x00007ffff3cb83b8 in g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #21 0x00007ffff3cc9557 in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #22 0x00007ffff3cd1a29 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #23 0x00007ffff3cd1ce2 in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #24 0x00007ffff508e349 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #25 0x00007ffff51304f5 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #26 0x00007ffff3cb83b8 in g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #27 0x00007ffff3cc9afb in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #28 0x00007ffff3cd16f9 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #29 0x00007ffff3cd1ce2 in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #30 0x00007ffff5240114 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #31 0x00007ffff512eca4 in gtk_propagate_event () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #32 0x00007ffff512f05b in gtk_main_do_event () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #33 0x00007ffff4daa1fc in ?? () from /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0 #34 0x00007ffff3542e04 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #35 0x00007ffff3543048 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #36 0x00007ffff354330a in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #37 0x00007ffff512e147 in gtk_main () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #38 0x00007ffff6fc236a in wxEventLoop::Run() () from /usr/lib/x86_64-linux-gnu/libwx_gtk2u_core-2.8.so.0 #39 0x00007ffff7033c1c in wxAppBase::MainLoop() () from /usr/lib/x86_64-linux-gnu/libwx_gtk2u_core-2.8.so.0 #40 0x0000000000454b05 in APP_KICAD::OnRun (this=0x71e740) at /home/sergey/tmp/kicad/kicad/kicad.cpp:289 #41 0x00007ffff68dcf7d in wxEntry(int&, wchar_t**) () from /usr/lib/x86_64-linux-gnu/libwx_baseu-2.8.so.0 #42 0x0000000000454314 in main (argc=1, argv=0x7fffffffe328) at /home/sergey/tmp/kicad/kicad/kicad.cpp:321 (gdb) Не оставте страждующего в беде. Сам я из программистов, но дебажить чужой код некогда. Пора бы уже плату ваять... Может я чего не так собрал или не оттуда склонировал?
  11. Imx6 без линухи

    Неужели на Qt так сложно писать? Вообще на потуги ТС без смеха нельзя смотреть. Вместо того, чтобы использовать единственно правильный для данной аппаратной платформы подход он собирается городить огороды и просирать сроки из-за каких-то своих религиозных убеждений. Может проще признать, что аппаратная платформа выбрана изначально неправильно и пересмотреть её пока ещё не так поздно?
  12. Ну а хедеры с описанием регистров, возможных битовых значений есть? Вот и ищите где они используются по исходникам ядра. Если хедеров нет и процессор нигде не упоминается, то значит Linux ещё не портирован на этот процессор и задача эта не совсем для новичка. Ну а вообще о каком процессоре-то речь (вижу вроде ARM9 какой-то), есть ли он в ванильном ядре?
  13. Обычно в таких случаях помогает аналогия. Можно посмотреть как сделано в других похожих драйверах, особенно для этой архитектуры. Ну а в общем случае задача решается как и везде: подключение хедера в исходник, некоторые подготовительные действия для маппирования регистров, запись в регистр как в обычную переменную.
  14. Даже если реле сработает напряжения на втором двигателе не будет. Почитайте хоть на википедии что такое реле. Нужно установить начальное состояние для контактов замкнутым (чтобы при срабатывании реле они размыкались) или взять двухпозиционное реле (как у меня на схеме). Честно говоря, microcap я видел давно, но неужели там такого реле нету? Транзистор Q1 должен быть открыт (напряжение на верхнем выводе - коллекторе чуть больше нуля). Если это не так, нужно подкрутить V2, R1. Собственно, если такие сложно с реле можно обойтись и без него (но только для симуляции). Достаточно транзисторного ключа (но включать его по-другому нужно будет). Двигатели бывают весьма разные по мощности, поэтому в реальной жизни приходится гальванически разделять систему управления и силовую часть. Отсюда и возникает реле.
×
×
  • Создать...