Написание программ на заказ (ПО на заказ)

Модератор: Модераторы разделов

sergeypankov
Сообщения: 13

Написание программ на заказ

Сообщение sergeypankov »

Интересует следующий вопрос. Основное занятие - разработка учебных лабораторных установок для проведения экспериментов по физике, электронике и т. д. В ближайшее время, наверно, будем стыковать наши учебные установки с компьютером, скорее всего либо через USB либо через COM порт. Соответственно будет написан драйвер на Си и программа-оболочка для управления установкой с компьютера (переключение режимов, индикация и т. д.) - все пишется под ОС WinXP. Железо обеспечивается программированием микроконтроллеров (обычно Atmel) и соответственно их прошивкой. Хотелось бы узнать, может кто посоветует здесь или еще где имеются ли люди, которые потом могли бы переписать код программ для работы под Linux и сколько может стоить эта работа (хотя бы приблизительно) - естественно все что будет написано уже под винду - в полном распоряжении.
Может кто-то здесь есть из знающих и могущих? или советом поможете? Если кто заинтересуется могу дать ссылку на сайт.
Спасибо сказали:
Аватара пользователя
romuil
Сообщения: 2095
Статус: Ромунцель
ОС: ALTLinux Sisyphus

Re: Написание программ на заказ

Сообщение romuil »

Врядли тут найдутся такие узкоспециализированые программисты. Попробуй лучше спросить на monitor.net.ru
Спасибо сказали:
sergeypankov
Сообщения: 13

Re: Написание программ на заказ

Сообщение sergeypankov »

Ну я бы не сказал что это прямо таки узкоспециальзированная область. В Windows например не сказал бы я что-так сложно что-либо передать например через COM порт. Тут проблема в том чтобы не просто сделать программу-оболчку, а еще переписать на Linux что-то типа драйвера для работы. В будущем, если например будут заказывать комплект из 10-12 установок имело бы смыл сделать дистрибутив Ubuntu, например, c уже предустановленным и настроенным ПО для работы. Это я как бы заранее интересуюсь данной проблемой, сам я под Линукс никогда не программировал.
Спасибо сказали:
yaleks
Сообщения: 2121
Статус: вне статуса
ОС: Gentoo ~

Re: Написание программ на заказ

Сообщение yaleks »

Нынче модно управлять железками по Ethernet.
Соответственно нужна программа для интерфейса управления (например на Java), а всё остальное в железке (микроконтроллер и linux).
Спасибо сказали:
Аватара пользователя
Stauffenberg
Сообщения: 2041
Статус: ☮ PEACE ☮
ОС: открытая и свободная

Re: Написание программ на заказ

Сообщение Stauffenberg »

sergeypankov писал(а): ↑
10.01.2009 11:19
Может кто-то здесь есть из знающих и могущих? или советом поможете? Если кто заинтересуется могу дать ссылку на сайт

Давайте линк
Labor omnia vincit

"Debugging is twice as hard as writing the code in the first place.
Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.” (Brian Kernighan)
Спасибо сказали:
sergeypankov
Сообщения: 13

Re: Написание программ на заказ

Сообщение sergeypankov »

Вот собственно сайт САЙТ Там можно посмотреть приблизительные фотографии, есть кое-какая документация. Направление, конечно, специфичное. Но все-таки.

yaleks писал(а): ↑
10.01.2009 20:48
Нынче модно управлять железками по Ethernet.
Соответственно нужна программа для интерфейса управления (например на Java), а всё остальное в железке (микроконтроллер и linux).

Может оно и модно, но тут лучше всего подходит по - старинке. Есть группа студентов, допустим, каждому компьютер с подключенной учебной установкой. Непосредственно, что б видел, что происходит.
Спасибо сказали:
yaleks
Сообщения: 2121
Статус: вне статуса
ОС: Gentoo ~

Re: Написание программ на заказ

Сообщение yaleks »

sergeypankov писал(а): ↑
10.01.2009 22:41
yaleks писал(а): ↑
10.01.2009 20:48
Нынче модно управлять железками по Ethernet.
Соответственно нужна программа для интерфейса управления (например на Java), а всё остальное в железке (микроконтроллер и linux).

Может оно и модно, но тут лучше всего подходит по - старинке. Есть группа студентов, допустим, каждому компьютер с подключенной учебной установкой. Непосредственно, что б видел, что происходит.

тут тоже самое, только шире возможности по управлению, да и COM порт нынче найти проблематично. А для USB нужна привязка низкоуровневым кодом драйвера.
Пара установка-компьютер при Ethernet легко сохраняется (просто рядом поставить), да и препод может со своего компа контролировать ход эксперимента.
Спасибо сказали:
sergeypankov
Сообщения: 13

Re: Написание программ на заказ

Сообщение sergeypankov »

Может так оно и лучше, только тогда получается нужно каким-то образом Linux прямо в установку ставить и сетку локальную делать между компом и установкой
Спасибо сказали:
Аватара пользователя
RasenHerz
Сообщения: 1341
ОС: Arch Linux amd64

Re: Написание программ на заказ

Сообщение RasenHerz »

выложите ссылки на оборудование. выложите исходный код и желательно спецификации.
Спасибо сказали:
sergeypankov
Сообщения: 13

Re: Написание программ на заказ

Сообщение sergeypankov »

Ссылка по которой можно посмотреть и скачать каталог здесь Там же можно посмотреть кое-какие описания и руководства. А исходного кода пока нет даже для Windows. Я тут интересуюсь на недалекое будущее, потому что в общем-то хотелось бы полностью поддреживать ОС Linux. Вот как только с компьютером установку закажут, под Винду отладим все код я обязательно выложу для примера.
Спасибо сказали:
yaleks
Сообщения: 2121
Статус: вне статуса
ОС: Gentoo ~

Re: Написание программ на заказ

Сообщение yaleks »

sergeypankov писал(а): ↑
11.01.2009 00:52
Может так оно и лучше, только тогда получается нужно каким-то образом Linux прямо в установку ставить и сетку локальную делать между компом и установкой

Linux стоит во множестве потребительских устройств (роутеры, телефоны, телевизоры...) так что это не проблема. А обмен по Ethernet применяется даже в промышленных установках (ряд ячеек, switch рядом и никакого CAMAC'а). Вэб интерфейс можно организовать и тогда на клиенте вообще софта кроме браузера не потребуется и будет законченное и долговечное решение. Удорожание комплектующих максимум будет где-то на $100, так что это не критично.
Спасибо сказали:
sergeypankov
Сообщения: 13

Re: Написание программ на заказ

Сообщение sergeypankov »

Но все равно, нужно будет каким-то образом в устройство Linux ставить. Мы же обычно используем микроконтроллеры ATmel но туда что-либо установить вряд ли получится. Я честно, говоря, даже и не представляю как это можно сделать. Вот поэтому сюда и написал. Может на будущее люди найдутся.
Спасибо сказали:
Аватара пользователя
Denjs
Сообщения: 1685
ОС: SuSe 10.2

Re: Написание программ на заказ

Сообщение Denjs »

1) каков бюджет проекта? (т.е. т.е. предлагаю исходить из вопроса "сколько вы можете выделить денег всего"?)
>>Соответственно будет написан драйвер на Си и программа-оболочка для управления
>>установкой с компьютера (переключение режимов, индикация и т. д.) - все пишется под ОС WinXP.

2) не лучше ли писать сразу с использованием какой-либо библиотеки типа QT - оно будет и под винду и под линукс? (я так понимаю проект ещё не совсем написан даже по д win?)
(я же так понимаю вас интересует работа с вашим оборудованием из-под линукс а не установка линукс на ваше оборудование?)
QDroid - Среда исполнения и фреймворк для QtScript.
OTPD - Открытые драйвера промышленных принтеров чеков и этикеток (кроссплатформенная подсистема печати).
Спасибо сказали:
Аватара пользователя
Doka
Сообщения: 715
Статус: ASIC Design Engineer
ОС: RHEL4

Re: Написание программ на заказ

Сообщение Doka »

а как-то непонятно...
из всего перечисленного (COM, Eth, USB) драйвера (в классическом понимании - kernel driver) требует только USB.

и почему вам только драйвер нужен? приложение верхнего уровня уже кроссплатформенно?!

кстати, если закладываетесь на COМ или Eth можно выбрать тоже что-то кроссплатформенное, чтобы два раза не переписывать одно и тоже - например питон: http://www.roboclub.ru/project/razn/2005/03/05/rasnoe_5.html
Never stop thinking..................................................................
Спасибо сказали:
Аватара пользователя
Denjs
Сообщения: 1685
ОС: SuSe 10.2

Re: Написание программ на заказ

Сообщение Denjs »

sergeypankov писал(а): ↑
11.01.2009 16:19
>>Но все равно, нужно будет каким-то образом в устройство Linux ставить.

а вот зачем вам это? пусть себе контроллер работает как работает - зачем его нагромождать целой ОС если он работает?
я так понимаю там вообще нет никакой ос - собственно целевая программа и все. больше -то зачем? вы можете ответить на этот вопрос?
вот если ответите - тогда ставьте.
QDroid - Среда исполнения и фреймворк для QtScript.
OTPD - Открытые драйвера промышленных принтеров чеков и этикеток (кроссплатформенная подсистема печати).
Спасибо сказали:
sergeypankov
Сообщения: 13

Re: Написание программ на заказ

Сообщение sergeypankov »

Проекта пока даже никакого нет. Мы сейчас учебные установки свои делаем пока без ПК (этого не требовалось - не в каждом ВУЗе это предусмотрено курсом, да и преподаватели подготовлены должны быть). Но сейчас вот может быть закажут пару-тройку установок для работы именно с ПК. А на счет бюджета я тут как раз и пытаюсь выяснить сколько хотябы приблизительно может стоить такая работа. Сам я думаю около 25 тыс руб /месяц где то так наверно.

Denjs писал(а): ↑
11.01.2009 18:36
sergeypankov писал(а): ↑
11.01.2009 16:19
>>Но все равно, нужно будет каким-то образом в устройство Linux ставить.

а вот зачем вам это? пусть себе контроллер работает как работает - зачем его нагромождать целой ОС если он работает?
я так понимаю там вообще нет никакой ос - собственно целевая программа и все. больше -то зачем? вы можете ответить на этот вопрос?
вот если ответите - тогда ставьте.

В микроконтроллер зашивается прошивка - шестнадцатеричный скомпилированный hex файл. Сама программа для работы (опрос кнопок управления, переключателей, вывод на дисплей) пишется на Си
Спасибо сказали:
Аватара пользователя
Denjs
Сообщения: 1685
ОС: SuSe 10.2

Re: Написание программ на заказ

Сообщение Denjs »

sergeypankov писал(а): ↑
12.01.2009 00:14
Проекта пока даже никакого нет. Мы сейчас учебные установки свои делаем пока без ПК (этого не требовалось - не в каждом ВУЗе это предусмотрено курсом, да и преподаватели подготовлены должны быть). Но сейчас вот может быть закажут пару-тройку установок для работы именно с ПК. А на счет бюджета я тут как раз и пытаюсь выяснить сколько хотябы приблизительно может стоить такая работа. Сам я думаю около 25 тыс руб /месяц где то так наверно.

тогда сразу планируйте писать оболочку на QT. Оно будет работать и на линукс и на венде.
Кроссплатформенные классы для работы с компортом для QT есть. Как минимум 2 штуки лично я знаю.
USB думаю будет работать как виртуальный com-порт. т.е. под виндой вы драйвер виртуального компорта ставите, а под линуксом при подключении устройства оно само появляется - девайс /dev/ttyUSB0 который последовательный порт и есть.


sergeypankov писал(а): ↑
11.01.2009 16:19
>>Но все равно, нужно будет каким-то образом в устройство Linux ставить.
В микроконтроллер зашивается прошивка - шестнадцатеричный скомпилированный hex файл. Сама программа для работы (опрос кнопок управления, переключателей, вывод на дисплей) пишется на Си

вот потому я и спрашиваю - с чего вам ставить на ваше устройство линукс? пусть там программа/прошивка сама по себе и пашет. зачем вам линукс на микроконтроллере? есть случаи когда надо, но вам зачем?
(или я чего-то конкретно не понимаю в том что вы задумали или в том как оно происходит... )
QDroid - Среда исполнения и фреймворк для QtScript.
OTPD - Открытые драйвера промышленных принтеров чеков и этикеток (кроссплатформенная подсистема печати).
Спасибо сказали:
sergeypankov
Сообщения: 13

Re: Написание программ на заказ

Сообщение sergeypankov »

Все правильно вы понимаете. Этот вопрос об установке Линукса на устройства возник потому, что предлагали связь компьютера с учебной установокой по сети. А раз связь по сети - то чем то ее надо обеспечивать на устройстве. В микроконтроллерах Atmega по поему нет сетевого интерфейса
Спасибо сказали:
yaleks
Сообщения: 2121
Статус: вне статуса
ОС: Gentoo ~

Re: Написание программ на заказ

Сообщение yaleks »

sergeypankov писал(а): ↑
12.01.2009 12:15
В микроконтроллерах Atmega по поему нет сетевого интерфейса

http://www.ethernut.de/
Спасибо сказали:
Аватара пользователя
Doka
Сообщения: 715
Статус: ASIC Design Engineer
ОС: RHEL4

Re: Написание программ на заказ

Сообщение Doka »

yaleks писал(а): ↑
12.01.2009 13:23
sergeypankov писал(а): ↑
12.01.2009 12:15
В микроконтроллерах Atmega по поему нет сетевого интерфейса
http://www.ethernut.de/

товарищ, а вы всё не унимаетесь.. по вашей же ссылке:

Код: Выделить всё

The 10 MBit Ethernet interface is based on the RTL8019AS

если всё еще сомневаетесь - загляните в даташит на ATmega128
Never stop thinking..................................................................
Спасибо сказали:
yaleks
Сообщения: 2121
Статус: вне статуса
ОС: Gentoo ~

Re: Написание программ на заказ

Сообщение yaleks »

в чём проблема? там указано как подключать сетевуху к Atmega (10mbit вполне хватит для поставленной задачи).
Есть и другие микроконтроллеры и SoC.

Мне не нравится разделение одного устройства на 2 части, особенно если оно предназначено для эксплуатации в лаборатории (через N лет потеряют софт и всё...).
Спасибо сказали:
sergeypankov
Сообщения: 13

Re: Написание программ на заказ

Сообщение sergeypankov »

yaleks писал(а): ↑
12.01.2009 21:49
в чём проблема? там указано как подключать сетевуху к Atmega (10mbit вполне хватит для поставленной задачи).
Есть и другие микроконтроллеры и SoC.

Мне не нравится разделение одного устройства на 2 части, особенно если оно предназначено для эксплуатации в лаборатории (через N лет потеряют софт и всё...).

Потеряют снова закажут за денюжки :console:
По сети хороший вариант - одна установка несколько компов. Но вот в универах по моему привыкли все по старинке. Одно рабочее место укомплектовано и все.
Спасибо сказали:
Аватара пользователя
Denjs
Сообщения: 1685
ОС: SuSe 10.2

Re: Написание программ на заказ

Сообщение Denjs »

sergeypankov писал(а): ↑
12.01.2009 12:15
Все правильно вы понимаете. Этот вопрос об установке Линукса на устройства возник потому, что предлагали связь компьютера с учебной установокой по сети. А раз связь по сети - то чем то ее надо обеспечивать на устройстве. В микроконтроллерах Atmega по поему нет сетевого интерфейса

Странные вы какието...
Помнится наши ребята с кафедры ЭВМ говоривали мне что стек (или его часть) протоколов TCP|IP был для какого-то микроконтроллера уже вполне себе был реализован. и почему-то мне думается без всякой ОС.
ну... я конечно может не совсем все понимаю, но поему никакого там линукса на борту не было. может "что-то свое" но в сильно урезанном варианте.

Ещё раз констатируем задачу: вам нужен стек протоколов и управляющая программа на микроконтроллере, а не линукс сам по себе.
это разные вещи. Конечно удобнее, понимаю, но думаю там многие проблемы до вас решены. покопайте подробнее.
не ставятже туда виндоус ради tcp|ip если есть ethernet-контроллер ?!
Я бы ещё сильно подумал. Задачи по портированию ядра какой-либо ОС на конкретный микроконтроллер думается мне может сьесть значительную часть бюджета. если не превысить его в несколько раз... имхо конечно.
Я конечно спрошу ещё одного своего товарища - может ему интересно будет, но думается мне я мало что нового услышу.
QDroid - Среда исполнения и фреймворк для QtScript.
OTPD - Открытые драйвера промышленных принтеров чеков и этикеток (кроссплатформенная подсистема печати).
Спасибо сказали:
yaleks
Сообщения: 2121
Статус: вне статуса
ОС: Gentoo ~

Re: Написание программ на заказ

Сообщение yaleks »

sergeypankov писал(а): ↑
13.01.2009 00:13
По сети хороший вариант - одна установка несколько компов. Но вот в универах по моему привыкли все по старинке. Одно рабочее место укомплектовано и все.

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

linux в микроконтроллере действительно не нужен, т.к. есть спец. ОС.
Спасибо сказали:
sergeypankov
Сообщения: 13

Re: Написание программ на заказ

Сообщение sergeypankov »

Denjs писал(а): ↑
13.01.2009 01:06
sergeypankov писал(а): ↑
12.01.2009 12:15
Все правильно вы понимаете. Этот вопрос об установке Линукса на устройства возник потому, что предлагали связь компьютера с учебной установокой по сети. А раз связь по сети - то чем то ее надо обеспечивать на устройстве. В микроконтроллерах Atmega по поему нет сетевого интерфейса

Странные вы какието...
Помнится наши ребята с кафедры ЭВМ говоривали мне что стек (или его часть) протоколов TCP|IP был для какого-то микроконтроллера уже вполне себе был реализован. и почему-то мне думается без всякой ОС.
ну... я конечно может не совсем все понимаю, но поему никакого там линукса на борту не было. может "что-то свое" но в сильно урезанном варианте.

Ещё раз констатируем задачу: вам нужен стек протоколов и управляющая программа на микроконтроллере, а не линукс сам по себе.
это разные вещи. Конечно удобнее, понимаю, но думаю там многие проблемы до вас решены. покопайте подробнее.
не ставятже туда виндоус ради tcp|ip если есть ethernet-контроллер ?!
Я бы ещё сильно подумал. Задачи по портированию ядра какой-либо ОС на конкретный микроконтроллер думается мне может сьесть значительную часть бюджета. если не превысить его в несколько раз... имхо конечно.
Я конечно спрошу ещё одного своего товарища - может ему интересно будет, но думается мне я мало что нового услышу.


Так нам и не нужен линукс в самой установке. Это тут начали предлагать разные вещи. Достаточно просто написать программу работы с установкой (с железом) через какой-либо интерфейс (например RS-232 - хотя наверно он уже устарел)
Спасибо сказали:
sergeypankov
Сообщения: 13

Re: Написание программ на заказ

Сообщение sergeypankov »

yaleks писал(а): ↑
13.01.2009 08:45
sergeypankov писал(а): ↑
13.01.2009 00:13
По сети хороший вариант - одна установка несколько компов. Но вот в универах по моему привыкли все по старинке. Одно рабочее место укомплектовано и все.

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

linux в микроконтроллере действительно не нужен, т.к. есть спец. ОС.

Да уж рекламу... Когда тут к нам приезжали из одного ВУЗа и речь зашла о работе учебных установок с компьютерами - то большинство думают что достаточно просто что-то вывести из корпуса установки и через АЦП просто подать на компьютер и он якобы все сам распознает. Так кто
Спасибо сказали: