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

Goofy

Свой
  • Постов

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

  • Посещение

Сообщения, опубликованные Goofy


  1. 4 minutes ago, Stepanov said:

    Что-то автор молчит в личке.

    Спасибо что написали! Чуть позже отвечу

     

    3 hours ago, gosha-z said:

    А консультантов из БАРСа по деньгам не потянули?

    Консультанты по сертификации у нас есть, зарубежные. Если среди "консультантов БАРСа" есть те, кому может быть интересна вакансия, буду благодарен за наводку.

    2 hours ago, Dejmos said:

    Хех, со своим 10+ лет опытом в разработке автопилотов - похоже не пройду по требованиям )))
    А так интересная фирма, многообещающая. Знакомились с вами, помнится, на Байкале, когда зарождался Эрбас (как он на тот момент назывался).

    Если интересно, пишите. Там кроме руководительских вакансий будут и разработческие

  2. Привет!

    На крупный международный проект по созданию систем автономности летательных аппаратов ищем руководителя направления разработки встраиваемого программного обеспечения на C/C++.

    Сайт компании: www.uav-siberia.com

    Вилка ЗП: 250 - 380к ра руки.

    Котнакт: makarov  ЭТ uav-siberia.com 

    актуальная вакансия тут (по возможности читать именно там):
    https://hh.ru/vacancy/43838915

    Обязанности:

    • организация и контроль процесса разработки согласно DO-178;
    • руководство и непосредственное участие в прототипировании программных решений;
    • взаимодействие и координация со смежными руководителями;
    • участие в разработке архитектуры программного комплекса в целом и его составных частей;
    • формирование стандартов для проекта, кода и требований;
    • участие в разработке требований как уровня прибора, так и уровня системы;
    • участие в формировании команды;
    • участие в разработке ПО.


    Требования:

    • подтвержденная экспертиза в области встраиваемого ПО, подтвержденная физико-математическая и системно-инженерная подготовка - ваша задача сформировать планку для остальной команды;
    • опыт работы в рамках стандартов разработки ПО DO/КТ-178/254 ISO26262, ГОСТ Р 51904;
    • опыт / готовность выстраивания удалённой работы всего подразделения;
    • свободное владение инструментами экосистемы разработки Linux (make, cmake, doxygen, plantUML, bash, python);
    • опыт разработки приложений под операционные системы реального времени (FreeRTOS, QNX, в т.ч. ARINC653 совместимых: VxWorks, LynxOS);
    • знание паттернов и конкретных реализаций механизмов межпроцессного взаимодействия (IPC);
    • понимание цифровой схемотехники;
    • знание нотаций ER и UML;
    • приветствуется опыт работы в среде matlab/Simulink;
    • поставленные устные и письменные коммуникативные навыки на русском и английском языке.

    Условия:

    • гибкий график;
    • удалённый режим работы;
    • амбициозная команда с 15 летним опытом разработки и производства систем управления полётом беспилотных летательных аппаратов;
    • обучение по ARP4754 / DO-178;
    • оплачиваемые отпуска и больничные;
    • доп бонусы, обсуждаемые на собеседовании.

     

    Если по навыкам ещё не Ваше, но хотите развиваться в эту сторону - всё равно пишите.

     

  3. Решено, еду! :)

    Скажите, а сколько туда стоит абонемент на день?

     

    Это вот это место:

    http://www.bobrovylog.ru/

     

    Порядка 1 тыс на 10 подъёмов, чуть больше - на весь день

    Есть всяческие сезонные абонименты

  4. Ну у меня в 20 километрах от Невского проспекта дыра полная. Интересно только по центру гулять, люди нормальные, лица красивые, одеты прилично. В 20 ум пригород, немаленький, раньше я считал его приличным проживя тут почти 40 лет. Теперь открыл глаза и понял что это грязная дыра с быдлонаселением. В автобусы садится без противогаза сложно, авто водить мне только время терять, проще хату в центре снять или переехать туда. А Вы говорите Красноярск. Не знаю есть ли жизнь внутри МКАД, но за границей центра в Санкт-Петербурга жизни и немного Петергофа жизни нет.

     

    Судя по всему, посмотреть мир Вам не очень то удалось.

    Посмотрите хоть по картинкам в гугле тот же самый Красноярск.

     

    Всё очень относительно. Если зайти в среднестатистическую коммуналку в центре Спб, то можно обнаружить, что такого ужаса ещё нужно поискать. Но народ там селится не за декором и целым потолком с полами. А вы говорите дыра...

     

  5. А так сами понимаете, как бы жить надо , на месте таком и миллион долларов мало помогает и утешает

     

    Про место и утешение, можете по-подробнее раскрыть мысль? :)

  6. Удаленка не рассматривается? Совсем - совсем?

     

    Нам познакомится в любом случае интересно, пишите, если есть взаимный интерес, в будущем могут быть какие то задачи.

     

    В контексте, обозначенном выше, удалёнка не рассматривается.

     

  7. Мечты требуется сбывать!

     

    Если учитывать, что компания построена с нуля, то динамика в этом плане оч положительная!

     

    Встречное предложение. Берусь организовать Branch вашей компании в Москве на указанных условиях.

    Задел -летающий 2 года БПЛ. На себя можем взять Все! или по частям.

    Ответ на опрос. Зарплата для Красноярска в 2-3 раза ниже для такого уровня разработок.( Для Москвы тоже, но ...). На такие работы от Вас и Новосибирска... уезжает народ в Южн. Корею на уровень как раз 300-350 тыс.

     

    Будем рады комплексным бизнес предложениям.

     

    1. Не увидел слова DO/КТ-254

    2. Интересно вот, а как топикстартер собирается в Кырске сертификацию проходить?

     

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

     

    Топикстартер сертификацию будет проходить в любой точке планеты по мере появления бизнес целесообразности для этого процесса.

     

    Для военных - в составе изделия с заказчиком.

    Для гражданских пилотируемых судов - пока не наш фокус.

    Для гражданского беспилотия до 30 кг этого не требуется.

    Для гражданского беспилотия после 30 кг - всё нельзя вообще. Пока-что.

     

  8. супер. а моя мечта работать в современном КБ.

    переезжайте всей своей конторой к нам, в Белгород.

    разбавьте местный агрохолдинговый колорит.

    Земля стоит копейки. 15 соток ИЖС еще недавно стоили от 25 тыс рублей, все коммуникации еще 75 тыс. Сейчас дороже, но некритично. (В порядке оффтопа).

     

    Переезд компании это её убийство :)

    Строиться будем в сибири, в Красноярске :)

  9. Раз тема для высказывания мнения. Выскажу свое. Считаю, что компаниям - разработчикам подобных систем давно пора уезжать из крупных городов в экологичные и живописные места и сельскую местность. ИМХО за этим будущее. И тогда к вам потянутся не только молодые, но и специалисты в возрасте. Наверное в каждом регионе есть такие места. Места много, недвижимость дешевая, рынок труда обширен (часто встречаю там людей с золотыми руками и не менее золотой головой), пробки отсутствуют как класс, а материальную базу создавать все равно с нуля ибо порушена она практически везде.

     

    Эт моя голубая мечта, Сэр. Отстроится в живописном месте за городом с адекватной доступностью. Посёлок котеджный там построить.

     

  10. не хватает пункта "пусть компания сама в мою местность переезжает"

     

    Видите поле для кооперации в Вашей местности? Пишите :)

     

    Так мало?

     

    Кто про что, а Бамбук про "конкретику"!

    images.jpg

  11. www.uav-siberia.com

    500 ошибка
    (Internal server error)

    Хммм.

     

    Спасибо за обратную связь!

    Признаём проблемы, сайт ложится по вине провайдера каждый день после праздников. Разбираемся. Сайт восстановит работу через некоторое время.

     

    Спасибо участникам опроса! Что касается денег - всё обсуждается. Что касается доверия - решается общением.

     

    Не буду скрывать, что вакансия ориентирована больше на молодых (до 30, 32х лет), готовых вырасти под эти требования в короткий срок.

  12. Компания "Автономные аэрокосмические системы" в настоящий момент усиливает радиотехническое направление и нуждается в хороших специалистах.

    Справка о имеющемся заделе (подробности в нижней части сообщения):

    • широкая номенклатура измерительных и исполнительных устройств систем управления полётом БПЛА;
    • линейка командно-телеметрических радиолиний;
    • программно-определяемые системы радиосвязи;
    • вычислители, инерциальные блоки.

    Обязанности:

    • проектирование цифровой радиоэлектронной аппаратуры различной сложности: этапы Э1, Э2, Э3 (с созданием УГО), ПП, корпус в комплексе (смежный отдел);
    • руководство разработкой РЭА с определённого этапа сотрудничества (распределение вышеуказанных задач между коллегами);

    Требования:

    • высшее техническое образование по специальности "Радиотехника" и аналогичным специальностям;
    • отличные знания цифровой и аналоговой схемотехники;
    • свободное чтение документации на английском языке;
    • опыт работы по специальности не менее 5 лет;
    • знание современной элементной базы;
    • знание САПР: Altium Designer, MATLAB;
    • опыт разработки электрических принципиальных схем и печатных плат высокой сложности: DDR, PCIe;
    • опыт работы с системами контроля версий svn, git;
    • знание конструкторского документооборота (ГОСТ, ЕСКД);
    • навык технического письма: ТЗ, ТУ, ПМ.

    Условия:

    • молодой, дружный, позитивный и талантливый коллектив (средний возраст 30 лет);
    • сложные, интересные проекты: от идеи до реализации;
    • устройство по ТК РФ: отпуск как положено, вся заработная плата официальная;
    • зарплату, соответствующую уровню компетенции (60-120К на руки);
    • помощь с переездом (если Вы не из Красноярска);
    • вложения в Ваше развитие: конференции, выставки, командировки на испытания.

    О компании:

    О вакансии в лирической форме:

     

    Если заинтересованы, писать на почту:

    makarov AT uav-siberia DOT com

     

    Очень просим поучаствовать в опросе. Это поможет нам сделать что-то хорошее и быстрее.

     

    PS

    Есть вакансия на тему xHDL / Радиосвязи / Радиолокации. Опубликую чуть позже.

  13. Коллеги, пытаюсь запустить АЦП в режиме опроса нескольких каналов через DMA.

     

     

    #include "stm32f4xx_rcc.h"
    #include "stm32f4xx_dma.h"
    #include "stm32f4xx_adc.h"
    #include "ADC.h"
    
    #define min(a,B) ( ( (a) > (B) ) ? (B) : (a) )
    
    // Длина выборки для скользящего среднего
    #define SELECTION_SIZE 1
    
    // Количество каналов которое опрашивается АЦП
    // должно равнятся числу регистрируемых к опросу линий:
    // ADC_RegularChannelConfig ( ADC1, ADC_Channel_10, rank++, ADC_SampleTime_480Cycles );
    #define CHANNELS_NUMBER 8
    #define BUFFER_SIZE ( SELECTION_SIZE * CHANNELS_NUMBER )
    
    volatile uint16_t adc_buffer [ BUFFER_SIZE ];
    
    int adc_init (  ) {
    
    RCC_AHB1PeriphClockCmd( RCC_AHB1Periph_DMA2, ENABLE );
    RCC_AHB1PeriphClockCmd( RCC_AHB1Periph_GPIOC, ENABLE );
    RCC_APB2PeriphClockCmd( RCC_APB2Periph_ADC1, ENABLE );
    
    GPIO_InitTypeDef GPIO_InitStruct;
    
    GPIO_StructInit ( &GPIO_InitStruct );
    GPIO_InitStruct.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3 | GPIO_Pin_4 | GPIO_Pin_5;
    GPIO_InitStruct.GPIO_Mode = GPIO_Mode_AN;
    GPIO_Init ( GPIOC, &GPIO_InitStruct );
    
    
    RCC_AHB1PeriphClockCmd ( RCC_AHB1Periph_DMA2 , ENABLE );
    DMA_InitTypeDef DMA_InitStructure;
    
    DMA_DeInit(DMA2_Stream0);
    DMA_StructInit ( &DMA_InitStructure );
    DMA_InitStructure.DMA_Channel = DMA_Channel_0;
    DMA_InitStructure.DMA_BufferSize = BUFFER_SIZE;
    DMA_InitStructure.DMA_DIR = DMA_DIR_PeripheralToMemory;
    DMA_InitStructure.DMA_Memory0BaseAddr = (uint32_t) adc_buffer;
    DMA_InitStructure.DMA_MemoryDataSize = DMA_PeripheralDataSize_HalfWord;
    DMA_InitStructure.DMA_MemoryInc = DMA_MemoryInc_Enable;
    DMA_InitStructure.DMA_Mode = DMA_Mode_Circular; 
    DMA_InitStructure.DMA_PeripheralBaseAddr = (uint32_t) &ADC1 -> DR;
    DMA_InitStructure.DMA_PeripheralDataSize = DMA_PeripheralDataSize_HalfWord;
    DMA_InitStructure.DMA_PeripheralInc = DMA_PeripheralInc_Disable;
    DMA_InitStructure.DMA_FIFOMode = DMA_FIFOMode_Disable;
    DMA_InitStructure.DMA_MemoryBurst = DMA_MemoryBurst_Single;
    DMA_InitStructure.DMA_PeripheralBurst = DMA_PeripheralBurst_Single;
    DMA_InitStructure.DMA_Priority = DMA_Priority_High;
    DMA_Init ( DMA2_Stream0, &DMA_InitStructure);
    DMA_Cmd ( DMA2_Stream0 , ENABLE );
    
    ADC_InitTypeDef 		ADC_InitStruct;
    ADC_CommonInitTypeDef 	ADC_CommonInitStructure;
    
    ADC_CommonInitStructure.ADC_Mode = ADC_Mode_Independent;
    ADC_CommonInitStructure.ADC_Prescaler = ADC_Prescaler_Div8;
    ADC_CommonInitStructure.ADC_DMAAccessMode = ADC_DMAAccessMode_Disabled;
    ADC_CommonInitStructure.ADC_TwoSamplingDelay = ADC_TwoSamplingDelay_5Cycles;
    ADC_CommonInit( &ADC_CommonInitStructure );
    
    ADC_StructInit ( &ADC_InitStruct );
    ADC_InitStruct.ADC_Resolution = ADC_Resolution_12b;
    ADC_InitStruct.ADC_ScanConvMode = ENABLE;
    ADC_InitStruct.ADC_ContinuousConvMode = ENABLE;
    ADC_InitStruct.ADC_ExternalTrigConvEdge = ADC_ExternalTrigConvEdge_None;
    ADC_InitStruct.ADC_NbrOfConversion = CHANNELS_NUMBER; //CHANNELS_NUMBER;
    ADC_InitStruct.ADC_ExternalTrigConv = 0x00;
    ADC_InitStruct.ADC_DataAlign = ADC_DataAlign_Right;
    ADC_Init ( ADC1, &ADC_InitStruct );
    
    ADC_TempSensorVrefintCmd ( ENABLE );
    
    ADC_Cmd ( ADC1, ENABLE );
    
    uint8_t rank = 1;
    ADC_RegularChannelConfig ( ADC1, ADC_Channel_10, 		rank++, ADC_SampleTime_56Cycles );
    ADC_RegularChannelConfig ( ADC1, ADC_Channel_11, 		rank++, ADC_SampleTime_56Cycles );
    ADC_RegularChannelConfig ( ADC1, ADC_Channel_12, 		rank++, ADC_SampleTime_56Cycles );
    ADC_RegularChannelConfig ( ADC1, ADC_Channel_13, 		rank++, ADC_SampleTime_56Cycles );
    ADC_RegularChannelConfig ( ADC1, ADC_Channel_14, 		rank++, ADC_SampleTime_56Cycles );
    ADC_RegularChannelConfig ( ADC1, ADC_Channel_15, 		rank++, ADC_SampleTime_56Cycles );
    ADC_RegularChannelConfig ( ADC1, ADC_Channel_TempSensor,rank++, ADC_SampleTime_56Cycles );
    ADC_RegularChannelConfig ( ADC1, ADC_Channel_Vrefint, 	rank++, ADC_SampleTime_56Cycles );
    
    ADC_DMARequestAfterLastTransferCmd(ADC1, ENABLE);
    ADC_DMACmd ( ADC1 , ENABLE );
    
    ADC_SoftwareStartConv ( ADC1 );
    return 0;
    }
    
    int adc_moving_average_read_all_channels ( volatile uint16_t *channels, uint32_t n ) {
    uint32_t sum;
    int i, j;
    int chn = min ( n, CHANNELS_NUMBER );
    
    for ( i = 0; i < chn; i++ ) {
    	sum = 0;
    	for ( j = 0; j < SELECTION_SIZE; j++ ) {
    		sum += adc_buffer [ i + j * ( CHANNELS_NUMBER ) ];
    	}
    	channels [ i ] = sum / SELECTION_SIZE;
    }
    
    return 0;
    }

     

    Проблема в том, что конвертация затыкается (глядя отладчиком данные не обновляются).

    В ADC_SR устанавливается флаг ADC_SR_OVR.

    Пытаюсь в прерывании по ADC_IT_OVR сбрасывать DMA и ADC (код ниже, на сколько понял из датащита), однако ничего не меняется.

     

    if (  ADC1 ->SR & ADC_SR_OVR ) {
    
        ADC1 ->SR &= ~ADC_SR_OVR;
    
        DMA_Cmd ( DMA2_Stream0 , DISABLE );
    
        DMA2_Stream0 -> M0AR = adc_buffer;
        DMA2_Stream0 -> NDTR = BUFFER_SIZE;
    
        DMA_Cmd ( DMA2_Stream0 , ENABLE );
        ADC_SoftwareStartConv ( ADC1 );
        overruns_num++;
    }

     

    Частота тактирования модуля АЦП - 10,5 МГц ( SYSCLK = ( ( 16 МГЦ / 20 ) * 210 ) / 2, где 20, 210, 2 - PLL_M, PLL_N, PLL_P соответственно ).

    Корректно ли я сбрасываю overrun ситуацию?

    Отчего происходит оверран, когда приоритет DMA stream выставлен самый большой?

    При этом число остальных DMA запросов в системе не велико: 1Гц 128 байт по SPI, 20 байт по USART.

     

    В целом прошу совета как организоваться опрос.

    Рассчитывал на то, что АЦП будет всегда формировать в памяти выборку для каждого канала для фильтрации скользящим среднем (увеличивая SELECTION_SIZE), а поток (таск) сервиса телеметрии будет эту выборку считывать ( adc_moving_average_read_all_channels () ).

    Измерения носят диагностический характер и частота их опроса критичной не являются.

  14. Ну это если приспосабливать обычную схемотехнику.

    В алтиуме есть большой раздел создания FGPA проектов.

    Именно там динамически назначаются ноги (сооответсвенно имена вы ставите сами)

    Но здесь мало работающих в данном направлении

     

    Да в том то и дело что это не FPGA, а iMX53 от фрискейла.

     

    Да уж сложно как-то.

    Если Вам нужно для каждого

    случая другое имя пина, то вариантов может несколько:

    1 менять имена прямо в схеме

    2 использовать параметры пинов, т.е. гасите имя и делаете видимым параметр, нужный Вам

    3 делаете альтернативные УГО и в схеме выбираете нужное.

     

    Кроме смены имени (что меньшее из проблем) хотелось бы группировать пины.

    А тут годиться только 3й вариант.

     

    (Альтернативный имеется ввиду просто другой компонент?)

     

    Но и с этим вариантом можно нарваться, контроль коррекности распиновки усложняется. Объясню почему.

    В убогой неудобной документации фрискейла все реконфигурируемые пины в привязке к футпринту обозначены однозначно: дефолтный вариант конфигурации.

    Если мы меняем это название, то проверять останется только через таблицы или их утилиту IOmux. И это явно слабое звено.

    Можно конечно прописать через слэш нужную альтернативную конфигурацию, но схема будет читаться хуже.

     

    А вот со скрытым названием и высвеченным параметром может получиться.

    Печалит только то, что УГО выходит не универсальным.

    Пуще этого печалит то, что процесс итерационный и то самое УГО придётся править по мере оптимизации трассировки, меняя конечную конфигурацию пинов: один пин выдернуть откуда-то, другой куда-то вернуть.

    В этот момент кто-то позвонил, позвал и появляется шанс вложить 1000$ в никуда.

     

    Большинство нестыковок конечно же всплывёт до запуска в печать, но хотелось бы построить процесс с минимумом ненужных и непрозрачных операций.

  15. Разрабатываю устройство на базе iMX53, у которого 30% ножек могут конфигурироваться под различные выводы внутренней периферии.

    Для гармонии с собой и внешним миром хочется группировать выводы периферии в УГО по назначению: SPI с SPI, UARTы c UARTами и т.д.

     

    Изначально все пины в документации однозначно обозваны и в первой итерации рисования УГО уже распределены.

     

    В реальном дизайне далеко не факт что конкретный модуль (пусть будет I2C) будет использоваться, при этом как его пин SDA будут задействованы на, например, UARTе TX. А UART RX, допустим, подключается к пину с дефолтной принадлежностью к пину шины адреса модуля внешней памяти (EMI).

    Если ничего не предпринимать, то получим размазанную по куче листов схему подключения UARTа. Абсолютно не читаемо.

     

    Конечно же можно цеплять название цепи, писать коментарии и т.д.

    В идеале хотелось бы прорисовать дублированные пины, но уже с желаемым названием и подписью номера конфигурации пина, пример - UART0_RX (alt3).

    В реальности имеем дело с дублированными десигнаторами, причитанием компилятора и не рабочим экспортом схематика в пцб.

     

    Есть соображения как обойти ситуацию? Можно бы иметь виртуальные дополнительные пины в схематике, не ссылающиеся на футпринт, но совмещённые в одну цепь с пинами оригинальными. Однако это возможно только если совмещаемый пин скрыть.

  16. Весьма актуально использование серии МР1: 30, 50 контактов.

    Есть идея (пусть и не самая дешёвая)

    Делать переходник в виде гибкой ПП - шлейфа, который напрямую запаивается на разъём и на плате паяется в нахлёст, а на пути к разъёму хомутается.

     

    Вопрос лишь в том, как долго держут вибрацию гибкие ПП и их пайка в нахлёст?

    Или надёжнее тромбовать контакты шлейфа в разъём на основной плате?

    Но главный вопрос собственно в целесообразности такого решения.

    Можно конечно по старинке: МГТФом на плату пин за пином и залить мастикой, но в нашем веке - не комильфо. Или, таки, комильфо?

     

     

  17. Как так?

    Разве не на ядро надо 1 В сначала подавать?!

    Кстати, какой LDO используете?

     

    По поводу порядка вы правы, не помню опячатался я тогда или затупил.

    Adp1712 использую, проблем небыло. Собрано 6 экземпляров.

    Для В ревизии чипа это порядок не критичен, все одновременно подается.

  18. Новая самба - 2.9 с патчами результата не дала. Эффект тот же.

     

    Непропаи. Подпаял JTAG. Непропаи кроме как на УСБ были ещё на шине данных.

     

    По последовательному порту через sam-ba не сработать если кварц отличается от того что в ките. Т.к. смена бод рейта происходит безвозвратно и на неправильное значение.

    Нужно пересобирать апплеты самбы или пользоваться USB.

  19. Сам-ба 2.8

    До этого тестировал и 2.9

    попробую ещё раз.

     

    Ещё момент: в рукопашную через терминал попробовал законфиругировать PLLA, затем MCKR. (согласно исходниками bootstram 1.13)

     

    Так вот на последнем дивайс перестаёт регировать.

     

    Самба при старте как конфигурирует клоки и с каких конф файлов?

    Я же выбираю ...9g20-EK, а там кварц 18.432. У меня 12мгц

×
×
  • Создать...