?

Log in

No account? Create an account
Против кого собираются бороться последователи Бандеры и Шухевича? - Юрий Панчул [entries|archive|friends|userinfo]
Money can buy bandwidth. Latency requires bribing God.

[ website | My Website ]
[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

Против кого собираются бороться последователи Бандеры и Шухевича? [Sep. 28th, 2014|11:02 pm]
Yuri Panchul
Украинский интернет сообщает:


http://zbroya.info/ru/blog/4115_kak-sbit-bpla/

"Сейчас армия РФ активно использует против наших сил малые (микро и мини) БПЛА. Были сообщения о нескольких подбитых, после чего противник стал использовать БПЛА на высотах, недоступных для поражения стрелковым оружием."

Screenshot 2014-09-28 21.55.36



Кто же эти загадочные российские БПЛА-строители и что за хардвер они используют?

Не буду вас мучать. После этой статьи в украинском интернете ко мне пришло письмо:


________________________________________
> > From: Dmitri Belimov [...]
> > Sent: Friday, September 26, 2014 7:29 AM
> > To: Yuri Panchul
> > Subject: Заготовка
> >
> > Добрый день.
> >
> > Пришло время отдавать долги :)
> >
> > Сделал небольшой проект под плату chipkitMax32 в нем интегрирована
> > ОС FreeRTOS и протокол передачи телеметрии MAVLINK. Думаю что данная
> > заготовка может пригодится при постройке небольших роботов и т.п. У
> > вас были несколько постов на эту тему, кто-то строил.
> >
> > После прошивки платы, надо взять программу для станции наземного
> > наблюдения QGroundControl http://www.qgroundcontrol.org/ Подключится
> > к соответствующему последовательному порту и наблюдать данные.
> > Данные идут тестовые.
> >
> > https://gitlab.com/pitman/chipkitmax32-mavlink/tree/master
> >
> > С уважением, Дмитрий.


Дмитрий создал плату с Microchip PIC32MX (ядро MIPS M4K), БПЛА на ее основе и софтвер для управления им. А недавно я прислал ему Microchip PIC32MZ c MIPS microAptiv UP (с большими кэшами и TLB MMU + в 2.5 раз выше тактовая частота и гораздо больше памяти), так что он может БПЛА еще и модифицировать.



Screenshot 2014-09-28 22.18.24



А вообще Дмитрий Белимов - это openh_master, которого вы можете увидеть на этом снимке, где я стою в компании с makhk, alexkoff, Иваном Дмитриевым, yakov_sirotkin и openh_master. Всех фотографировал alexkoff.

IMG_0007



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

Высокий и в шляпе fritzmorgen, а по левую руку от меня alec_v:

IMG_0064



Видео от Дмитрия Белимова:







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

https://gitlab.com/pitman/chipkitmax32-mavlink/tree/master


/* 
 * File:   main.c
 *
 * PIC32MX with FreeRTOS and MAVLINK integration project
  *
 * Main file
 *
 * Copyright (C) Dmitry V. Belimov 2014
 * Email: d.belimov@gmail.com
 *
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License
 * as published by the Free Software Foundation; either version 2
 * of the License, or (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
 *
 */

#include <stdio.h>
#include <stdlib.h>
#include <inttypes.h>
#include <p32xxxx.h>
#include <xc.h>
#include <sys/attribs.h>
#include <math.h>

/* Kernel includes. */
#include "FreeRTOS.h"
#include "task.h"
#include "croutine.h"
#include "timers.h"
#include "queue.h"

/* Hardware specific includes. */
#include "ConfigPerformance.h"
#include "peripheral/uart.h"

/* Project setting includes */
#include "projdefs.h"
#include "mavlink/v1.0/common/mavlink.h"

. . . . . . . . . . . 

/* Service task for received mavlink pockets */
void prvUARTLINKRXd(void *pvParameters)
{
    static PROJDEFS_CONF_MAVLINK_MSG msgmav_rx;
    static mavlink_message_t msg;
    static mavlink_status_t status;
    static mavlink_request_data_stream_t request_data_stream;
    static unsigned short k;

    for(;;)
    {
        /* receive new data */
        xQueueReceive(xQueueMAVLINKRX, &msgmav_rx, portMAX_DELAY);

        for (k = 0; k < msgmav_rx.len; k++)
        {
            if(mavlink_parse_char(MAVLINK_COMM_0, msgmav_rx.msg[k], &msg, &status))
            {
                if (msg.sysid == pilot.mav_msg.ground_station_id)
                {
                    switch(msg.msgid)
                    {
                    case MAVLINK_MSG_ID_HEARTBEAT:
                        /* restore link after lost */
                        if (!pilot.mav_msg.link_state)
                        {
                            pilot.mav_msg.link_state = 1;
                            pilot.mav_msg.link_prev_state = 0;
                            /* Link established */
                            /* start some task here */
                        }
                        /* Clear mavlink timeout counter */
                        pilot.mav_msg.timeout_cnt = 0;
                        break;
#if 0
                    case MAVLINK_MSG_ID_REQUEST_DATA_STREAM:
                        mavlink_msg_request_data_stream_decode(&msg, &request_data_stream);
                        switch (request_data_stream.req_stream_id)
                        {

                        }
                        break;
                    case MAVLINK_MSG_ID_COMMAND_LONG:
                        break;
#endif
                        default:
                        //Do nothing
                        break;
		    }
                    break;
                }

                pilot.mav_packet_rx_drops += status.packet_rx_drop_count;
                pilot.mav_packet_rx_ok += status.packet_rx_success_count;
            }
        }
    }
    vTaskDelete(NULL);
}

. . . . . . . . . . . .

int main(void) {
    portBASE_TYPE xResult;

    prvSetupHardware();

    /* Register Queues */

    /* MAVLINK start */
    /* Init Queue for transmit data to ground */
    xQueueMAVLINKTX = xQueueCreate(PROJDEFS_CONF_MAVLINK_MSG_DEEP,
            sizeof(PROJDEFS_CONF_MAVLINK_MSG));

    /* Init Queue for receive data from ground */
    xQueueMAVLINKRX = xQueueCreate(PROJDEFS_CONF_MAVLINK_MSG_DEEP,
            sizeof(PROJDEFS_CONF_MAVLINK_MSG));
    /* MAVLINK stop */

    /* Register tasks */
    /* The main task for LEDs */
    xResult = xTaskCreate( prvLEDSd, ( signed char * ) "prvLEDSd",
            configMINIMAL_STACK_SIZE, NULL, 1, NULL);

    /* MAVLINK start */
    /* Service task for transmit data to ground */
    xResult = xTaskCreate( prvUARTLINKTXd, ( signed char * ) "prvUARTLINKTXd",
            configMINIMAL_STACK_SIZE, NULL, 1, NULL);

    /* Service task for receive data from ground */
    xResult = xTaskCreate( prvUARTLINKRXd, ( signed char * ) "prvUARTLINKRXd",
            configMINIMAL_STACK_SIZE, NULL, 1, NULL);

    /* Service task for make and send MAVLINK messages  */
    xResult = xTaskCreate( prvMAVLINKd, ( signed char * ) "prvMAVLINKd",
            configMINIMAL_STACK_SIZE, NULL, 1, NULL);
    /* MAVLINK stop */

    /* Start the scheduler. */
    vTaskStartScheduler();

    for( ;; );

    return (EXIT_SUCCESS);
}

// ****************************************************************************
// ****************************************************************************
// Application Main Entry Point
// ****************************************************************************
// ****************************************************************************

static void prvSetupHardware( void )
{
    static unsigned char k;

    /* Configure the hardware for maximum performance. */
    vHardwareConfigurePerformance();

    /* Setup to use the external interrupt controller. */
    vHardwareUseMultiVectoredInterrupts();

    portDISABLE_INTERRUPTS();

    /* Init some data structure */

    /* MAVLINK start */
    /* Configure RFLINK`s UART */
    pilot.sensors_present = MAV_SYS_STATUS_SENSOR_3D_GYRO | MAV_SYS_STATUS_SENSOR_3D_ACCEL |
            MAV_SYS_STATUS_SENSOR_3D_MAG | MAV_SYS_STATUS_SENSOR_ABSOLUTE_PRESSURE |
            MAV_SYS_STATUS_SENSOR_MOTOR_OUTPUTS | MAV_SYS_STATUS_SENSOR_RC_RECEIVER;
    pilot.sensors_enabled = MAV_SYS_STATUS_SENSOR_3D_GYRO | MAV_SYS_STATUS_SENSOR_3D_ACCEL |
            MAV_SYS_STATUS_SENSOR_3D_MAG | MAV_SYS_STATUS_SENSOR_ABSOLUTE_PRESSURE |
            MAV_SYS_STATUS_SENSOR_RC_RECEIVER;
    pilot.sensors_health = MAV_SYS_STATUS_SENSOR_3D_GYRO | MAV_SYS_STATUS_SENSOR_3D_ACCEL |
            MAV_SYS_STATUS_SENSOR_ABSOLUTE_PRESSURE |
            MAV_SYS_STATUS_SENSOR_MOTOR_OUTPUTS | MAV_SYS_STATUS_SENSOR_RC_RECEIVER;
    pilot.mavuart.enable = 1;
    pilot.mavuart.tx_busy = 0;
    pilot.mavlink_rx = MAVLINK_RX_WAIT;
    /* Configure Mavlink */
    pilot.mav_system_type = MAV_TYPE_FIXED_WING;
    pilot.mav_autopilot_type = MAV_AUTOPILOT_GENERIC;
    pilot.mav_system_mode = MAV_MODE_PREFLIGHT;
    pilot.mav_custom_mode = 0;
    pilot.mav_system_state = MAV_STATE_STANDBY;
    pilot.mavlink_system.sysid = 20;
    pilot.mavlink_system.type = MAV_TYPE_FIXED_WING;
    pilot.mav_packet_rx_drops = 0;
    pilot.mav_packet_rx_ok = 0;
    pilot.mav_msg.all_data = 0x00000000;
    pilot.mav_msg.enable = 1;
    pilot.mav_msg.force_data_send = 1;
    pilot.mav_msg.ground_station_id = 255;
    /* RFLINK stop */

    /* Init statistics counters */
    stats.idle_cnt = 0;
    stats.idle_period_cnt = 0;

    /* Init generic GPIOs */
    vProjdefsInitGPIO();
    /* Init UART */
    vProjdefsConfigureUART();

    . . . . . . . . . . . 
}

/*-----------------------------------------------------------*/

void vApplicationTickHook( void )
{
    /* This function will be called by each tick interrupt if
       configUSE_TICK_HOOK is set to 1 in FreeRTOSConfig.h.  User code can be
       added here, but the tick hook is called from an interrupt context, so
       code must not attempt to block, and only the interrupt safe FreeRTOS API
       functions can be used (those that end in FromISR()). */

    ulLOCALTIME++;

    /* CPU free resourse counter some code */
    stats.idle_period_cnt++;
    /* show idle stat every 1 sec. */
    if (stats.idle_period_cnt >= 1000)
    {
        stats.idle_value = stats.idle_cnt;
        stats.show_fl = 1;
        stats.idle_period_cnt = 0;
        stats.idle_cnt = 0;
        /* RFLINK start */
        pilot.mcu_load = (unsigned short)(1000 - stats.idle_value / PROJDEFS_CONF_MCU_FREE);
        /* Mavlink */
        if (pilot.mav_msg.link_state)
        {
            pilot.mav_msg.timeout_cnt++;
            if (pilot.mav_msg.timeout_cnt > PROJDEFS_MAVLINK_TIMEOUT)
            {
                pilot.mav_msg.link_state = 0;
                pilot.mav_msg.link_prev_state = 1;
                /* No link with ground station */
                /* do somethink here */
                
            }
        }
        /* RFLINK stop */
    }
}




Вы поняли, почему дрожит от страха сайт zbroya.info (по украински "зброя" значит "оружие")

Понял - они боятся, что БПЛА Дмитрия Белимова помешает снести очередную статую Ленина
7(28.0%)
На днях Дмитрий Белимов получил от Панчула посылку с втрое более быстрым микроконтроллером PIC32MZ. Может теперь БПЛА атакуют Вашингтон
9(36.0%)
Да и Наталья Радулова на отпуске в селе в Одессе не избежит аэросьемки с выкладыванием ее фоток в ЖЖ
2(8.0%)
Я тоже хочу сделать что-нибудь летающее на процессоре MIPS!
7(28.0%)
Из-за бугра плюете?
0(0.0%)
LinkReply

Comments:
[User Picture]From: dom3d
2014-09-29 06:12 am (UTC)
Юра, чтобы ты знал.
Лучшие авиамоделисты СССР были в Киеве.
Большинство чемпионов мира работали на КМЗ.

Испугал ежа голой жопой.
(Reply) (Thread)
[User Picture]From: panchul
2014-09-29 06:21 am (UTC)
При чем тут я?

Это цитата из украинского сайта


http://zbroya.info/ru/blog/4115_kak-sbit-bpla/

"Сейчас армия РФ активно использует против наших сил малые (микро и мини) БПЛА. Были сообщения о нескольких подбитых, после чего противник стал использовать БПЛА на высотах, недоступных для поражения стрелковым оружием.

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

Правда, в последнее время в батальонах стали появляться 12.7 мм пулеметы и ЗУ-23, но информации о сбитых с их помощью беспилотниках что-то не видно."




Edited at 2014-09-29 06:22 am (UTC)
(Reply) (Parent) (Thread)
[User Picture]From: dom3d
2014-09-29 06:13 am (UTC)
И вообще меня очень сильно удивляет, что ты бывший киевлянин прогибаешься перед гебистами.
Наверное, хочешь подряд ухватить.
(Reply) (Thread)
[User Picture]From: panchul
2014-09-29 06:24 am (UTC)

Где гэбисты? На сайте http://www.qgroundcontrol.org ?

(Reply) (Parent) (Thread)
[User Picture]From: vit_r
2014-09-29 06:54 am (UTC)
А недавно я прислал ему Microchip PIC32MZ c MIPS microAptiv UP (с большими кэшами и TLB MMU + в 2.5 раз выше тактовая частота и гораздо больше памяти), так что он может БПЛА еще и модифицировать.

Та-а-а-ак. Сотрудник компании (как её там) Юрий Панчул в обход санкций занимается поставкой в Россию вооружений.

Кстати, БПЛА были закуплены в Израиле.
(Reply) (Thread)
[User Picture]From: panchul
2014-09-29 06:59 am (UTC)
Учебные платы с микроконтроллерами без всяких шифрований под ограничения не попадают.

*** Кстати, БПЛА были закуплены в Израиле ***

Вы почитайте статью по ссылке полностью, там много перлов:


"Террористы тоже используют дроны. Они более простые, но них сложно попасть из-за их малых размеров.

Я не специалист в авиамоделировании, но пришла в голову мысль использовать против таких небольших БПЛА недорогие модели самолётов/вертолётов с двигателем внутреннего сгорания в качестве перехватчиков-камикадзе. Уничтожать они будут либо тараном, либо подрывом малого количества ВВ с поражающим элементом в виде шариков из подшипника.

Модель самолета с ДВС на радиоуправленииМодель самолета с ДВС на радиоуправлении

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


(Reply) (Parent) (Thread) (Expand)
[User Picture]From: nicka_startcev
2014-09-30 01:08 am (UTC)
ээ.. а назовите мне хоть один товар НЕ двойного назначения?

даже манной кашей можно "врагов" поддерживать.
(Reply) (Parent) (Thread) (Expand)
[User Picture]From: exshvonder
2014-09-29 07:02 am (UTC)
Господа свидомые укры действительно считают людей вроде Дмитрия Белимова русской армией и действительно ведут с ними войну, с артиллерией, безпекой и европейскими друзьями, пока в районе Донецка и Луганска, но мечтают о Курске, Белгороде, Кубани, Кавказе и Москве.

Думаю, уже взяли его на заметку.
(Reply) (Thread)
[User Picture]From: openh_master
2014-09-29 07:38 am (UTC)
Ну им можно только успехов пожелать, пусть приходят, тайга у нас (Восточная Сибирь) большая, места много....
(Reply) (Parent) (Thread) (Expand)
[User Picture]From: brenik
2014-09-29 07:48 am (UTC)
да вы батенька омериканский шпиён )

а чё кода так мало?
(Reply) (Thread)
[User Picture]From: panchul
2014-09-29 07:56 am (UTC)
А это только фрагменты - см. ссылку
(Reply) (Parent) (Thread) (Expand)
[User Picture]From: maxdz
2014-09-29 08:48 am (UTC)
Это, типа, явка с повинной? :)

Дело полезное. Признание вины и чистосердечное раскаяние - смягчают наказание.
(Reply) (Thread)
From: realurix
2014-09-29 08:58 am (UTC)
Максик, быстрее бегите, стучите своим новым кураторам, как Вы стучали в КГБ...
(Reply) (Parent) (Thread) (Expand)
[User Picture]From: abbat81
2014-09-29 09:03 am (UTC)
Люди не должны убивать людей....

людей должны убивать роботы
(Reply) (Thread)
[User Picture]From: red_army_1917
2014-09-29 05:49 pm (UTC)

уже и видео есть дронов НовоРоссии


(Reply) (Parent) (Thread) (Expand)