На чем пишется софт для КА?

Автор hudvin, 06.05.2009 15:28:09

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Frontm

Цитироватьребята вы меня пугаете . . .
Ну если за год можно АМС собрать, то 2 недели на язык - это очень много :D Вот я как напуганный даже не встреваю со "своим" СИ++.

LRV_75

вот мне по волю случая пришлось заниматься передачей зашифрованной информации по сети особым программистом я себя назвать не могу. НО,используя современные языки высоко уровня сделал это легко, используя соответствующие классы. Я это к тому, что может уже пора применять железо позволяющее применять современные средства ну и есстественно ОС. А то все изобретаем колесо с нуля
Главное не наличие проблем, главное способность их решать.
У каждой ошибки есть Имя и Фамилия

KBOB

ЦитироватьВ этом году был конкурс программистов где в каччестве задач надо было управлять спутником (в прошлом году был марсоход).

   1. Перевести спутник, движущийся по круговой орбите вокруг центрального тела (Земли), на круговую орбиту с другим радиусом
   2. Произвести "стыковку" с другим спутником, движущимся по круговой орбите
   3. Произвести "стыковку", но при условии, что начальная орбита управляемого спутника и спутника-цели - это не круги, а эллипсы
   4. Пролететь в радиусе 1 км от 11 спутников, движущихся по произвольным орбитам, дозаправляясь топливом на орбитальной заправочной станции и учитывая влияние не только Земли, но и Луны


Несколько отчетов участников:

http://users.livejournal.com/_adept_/94839.html
http://murkt.org.ua/blog/2009/06/30/icfpc09-space-opera/
http://larubin.livejournal.com/119872.html

тут есть еще http://habrahabr.ru/blogs/icfpc/63279/

Улыбнуло!
http://larubin.livejournal.com/119872.html
ЦитироватьТут еще одно лирическое отсупление.


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

Оказалось, что все действительно работает (если исключить ошибки типа непроинициализированных переменных), но только в пределах одной архитектуры/компилятора. Т.е. решение, скомпилированное Visual под винду не будет рабоать с решением, скомпилированным gcc под Intel-Mac, а то, в свою очередь, не будет работать с решением под PowerPC-Mac. Потому что, например, для посчета sqrt вижуальник применяет SSE2-инструкции, а gcc под Intel-Mac применяет x87 инструкции. В результате получается хоть маленькая, но разница. Но со временем она накапливается до существенных размеров. В результате миры идут, что называется out-of-sync, несинхронно.
Россия больше чем Плутон.

А.Коваленко

Цитироватьвот мне по волю случая пришлось заниматься передачей зашифрованной информации по сети особым программистом я себя назвать не могу. НО,используя современные языки высоко уровня сделал это легко, используя соответствующие классы. Я это к тому, что может уже пора применять железо позволяющее применять современные средства ну и есстественно ОС. А то все изобретаем колесо с нуля
Вам приходилось наблюдать по ТМИ во время полёта, как тяжелые частицы выбивают ячейки памяти и искажают их содержимое? Зрелище не для слабонервных. При объеме ОЗУ 1-2 Мбайт еще можно обеспечить программную защиту от сбоев, ресурсов хватает. А при десятках мегабайт?

Not

ЦитироватьТут еще одно лирическое отсупление.


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

Оказалось, что все действительно работает (если исключить ошибки типа непроинициализированных переменных), но только в пределах одной архитектуры/компилятора. Т.е. решение, скомпилированное Visual под винду не будет рабоать с решением, скомпилированным gcc под Intel-Mac, а то, в свою очередь, не будет работать с решением под PowerPC-Mac. Потому что, например, для посчета sqrt вижуальник применяет SSE2-инструкции, а gcc под Intel-Mac применяет x87 инструкции. В результате получается хоть маленькая, но разница. Но со временем она накапливается до существенных размеров. В результате миры идут, что называется out-of-sync, несинхронно.
Нижегородский французский  :D

KBOB

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

А как вы определяете какое средства современное, а какое уже нет?
В чем по вашему мнению проявляется современность?
Россия больше чем Плутон.

KBOB

Цитировать
ЦитироватьТут еще одно лирическое отсупление.


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

Оказалось, что все действительно работает (если исключить ошибки типа непроинициализированных переменных), но только в пределах одной архитектуры/компилятора. Т.е. решение, скомпилированное Visual под винду не будет рабоать с решением, скомпилированным gcc под Intel-Mac, а то, в свою очередь, не будет работать с решением под PowerPC-Mac. Потому что, например, для посчета sqrt вижуальник применяет SSE2-инструкции, а gcc под Intel-Mac применяет x87 инструкции. В результате получается хоть маленькая, но разница. Но со временем она накапливается до существенных размеров. В результате миры идут, что называется out-of-sync, несинхронно.
Нижегородский французский  :D
На самом деле улыбнуло то процессор в операциях с плавающей точкой может работать в трех вариантах точности:
24 bits precision - одинарная точность (single precision), 32 bit length
53 bits precision - двойная точность (double precision),64 bit length
64 bits precision - повышеная точность  (extended precision or double extended precision), 80 bit length.
Более подробно раскрыто здесь
http://software.intel.com/ru-ru/blogs/2008/08/18/84/

И вот такие тонкости работы процессора приводят потом некоторых программистов в полное замешательство. Под Windows программа выдает один результат, а в ОС РВ QNX4 где используется 53 bits precision совсем другой.
Россия больше чем Плутон.

LRV_75

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

А как вы определяете какое средства современное, а какое уже нет?
В чем по вашему мнению проявляется современность?
то что используется во всем jаvа sсriрt, visuаl, стандарт xml, протоколы http и https с сертификатами (вот и передавайте по ним кадры Тми), базы sql servеr и пр. На этом работает весь мир. Придшего молодого программиста можно сразу обучать особенностям КА, а не каким то неведомым языкам низкого уровня
Главное не наличие проблем, главное способность их решать.
У каждой ошибки есть Имя и Фамилия

sychbird

Я не специалист, непосредственно имеющий дело с СПО КА, но по косвенным сведениям мелькающим в сети, создается впечатление, что радиационно-стойкие комплекты чипов по возможностям находятся где-то в диапазоне 386-486 процессоров. А при таких параметрах о каких возможностях можно говорить.
Правда не ясно, можно ли здесь идти по пути многократного резервирования менее стойких компонентов. На это может дать ответ только практика. Но риск велик, и до этого может не дойти.

Ну это, взгляд дилетанта, конечно!.
Ответил со свойственной ему свирепостью (хотя и не преступая ни на дюйм границ учтивости). (C)  :)

KBOB

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

Умное железо = глупое железо + контроллер + прошивка + коммуникационный протокол.
Мало того, что контроллер стоит денег, а прошивка написана с применением несовременного языка программирования  :lol: и может запросто содержать ошибки, так еще и коммуникационный протокол придется разработать.
Россия больше чем Плутон.

А.Коваленко

Цитироватьто что используется во всем jаvа sсriрt, visuаl, стандарт xml, протоколы http и https с сертификатами (вот и передавайте по ним кадры Тми), базы sql servеr и пр. На этом работает весь мир.
Можете привести примеры использования того, что Вы перечислили, в бортовых комплексах управления КА?

KBOB

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

А как вы определяете какое средства современное, а какое уже нет?
В чем по вашему мнению проявляется современность?
то что используется во всем jаvа sсriрt, visuаl, стандарт xml, протоколы http и https с сертификатами (вот и передавайте по ним кадры Тми), базы sql servеr и пр. На этом работает весь мир. Придшего молодого программиста можно сразу обучать особенностям КА, а не каким то неведомым языкам низкого уровня
Протоколы http и https не подойдут, только по smtp элетро-почтой с уведомлением о прочтении!  :lol:  :lol:  :lol:  :lol:  :lol:  :lol:
Россия больше чем Плутон.

LRV_75

Цитировать
Цитироватьто что используется во всем jаvа sсriрt, visuаl, стандарт xml, протоколы http и https с сертификатами (вот и передавайте по ним кадры Тми), базы sql servеr и пр. На этом работает весь мир.
Можете привести примеры использования того, что Вы перечислили, в бортовых комплексах управления КА?
да я по наземке такого не встречал, а Вы воворите КА! Сидим все в каменном веке. Не используються современные технологии. Кодируют, декодируют ТМИ кадр. Во! Орбиту еще придумали! Почему его кадр тми нельзя прямым кодом передать кай нттрs запрос? Потому что используем убогие программно аппаратные средства, не поддерживающие современне стандарты
Главное не наличие проблем, главное способность их решать.
У каждой ошибки есть Имя и Фамилия

KBOB

Цитировать
Цитировать
Цитироватьто что используется во всем jаvа sсriрt, visuаl, стандарт xml, протоколы http и https с сертификатами (вот и передавайте по ним кадры Тми), базы sql servеr и пр. На этом работает весь мир.
Можете привести примеры использования того, что Вы перечислили, в бортовых комплексах управления КА?
да я по наземке такого не встречал, а Вы воворите КА! Сидим все в каменном веке. Не используються современные технологии. Кодируют, декодируют ТМИ кадр. Во! Орбиту еще придумали! Почему его кадр тми нельзя прямым кодом передать кай нттрs запрос? Потому что используем убогие программно аппаратные средства, не поддерживающие современне стандарты
Если ТМИ кадр будет передан с ошибками, что произойдет?  :wink:
Россия больше чем Плутон.

LRV_75

Цитировать
Цитировать
Цитировать
Цитироватьто что используется во всем jаvа sсriрt, visuаl, стандарт xml, протоколы http и https с сертификатами (вот и передавайте по ним кадры Тми), базы sql servеr и пр. На этом работает весь мир.
Можете привести примеры использования того, что Вы перечислили, в бортовых комплексах управления КА?
да я по наземке такого не встречал, а Вы воворите КА! Сидим все в каменном веке. Не используються современные технологии. Кодируют, декодируют ТМИ кадр. Во! Орбиту еще придумали! Почему его кадр тми нельзя прямым кодом передать кай нттрs запрос? Потому что используем убогие программно аппаратные средства, не поддерживающие современне стандарты
Если ТМИ кадр будет передан с ошибками, что произойдет?  :wink:
то вернеться ошибка передачи тми кадра, что сейчас не происходит, и кадр можно передать еще раз. А не помечать его сбойным как сейчас путем анализа маркеров. Понимаете. сейчас передатцики тми работают в одну сторону, нет обратной связи от станции приема
Главное не наличие проблем, главное способность их решать.
У каждой ошибки есть Имя и Фамилия

LRV_75

и регить тми в рмв в бд. Ну скока там полный поток по скут? Уже позабыл, 512кбит? Да нечего делать и обрабатывать и передавать в рмв не репортажный поток, а полный
Главное не наличие проблем, главное способность их решать.
У каждой ошибки есть Имя и Фамилия

Местный

Кстати , КС - 020 , сделан на 186 , в то время думаете не было 2 , 3 , 4 и 5 пней ?Чем проще , тем надежней .

LRV_75

ЦитироватьКстати , КС - 020 , сделан на 186 , в то время думаете не было 2 , 3 , 4 и 5 пней ?Чем проще , тем надежней .
тем надежней что?
Главное не наличие проблем, главное способность их решать.
У каждой ошибки есть Имя и Фамилия

Местный

Тем надежней и защищенней данный прибор . Пример ФЛЕШа тому , гораздо надежней и устойчивей - масочное ПЗУ , а не сложный хотя и более емкий ФЛЕШ .

А.Коваленко

Цитировать
Цитировать
Цитироватьто что используется во всем jаvа sсriрt, visuаl, стандарт xml, протоколы http и https с сертификатами (вот и передавайте по ним кадры Тми), базы sql servеr и пр. На этом работает весь мир.
Можете привести примеры использования того, что Вы перечислили, в бортовых комплексах управления КА?
да я по наземке такого не встречал, а Вы воворите КА! Сидим все в каменном веке. Не используються современные технологии. Кодируют, декодируют ТМИ кадр. Во! Орбиту еще придумали! Почему его кадр тми нельзя прямым кодом передать кай нттрs запрос? Потому что используем убогие программно аппаратные средства, не поддерживающие современне стандарты
А что такое "современные технологии"? Вы про спецификации CCSDS слышали что-нибудь? Если нет, то советую ознакомиться http://www.ccsds.org