GB28181 Investigación de solución de casco inteligente y realización técnica

¿Qué es un casco inteligente?

El casco de seguridad inteligente es un tipo de casco de seguridad que integra tecnología avanzada, que puede basarse en la especificación GB28181 y es adecuado para operadores en industrias de alto riesgo como inspecciones ferroviarias, energía eléctrica, petroquímica, etc., así como protección de seguridad en situaciones de emergencia como extinción de incendios y salvamento.

Los cascos inteligentes suelen tener las siguientes funciones:

  1. Posicionamiento en tiempo real: el módulo de posicionamiento GPS incorporado puede ubicar la posición del operador en tiempo real e informarlo al centro de comando a tiempo para evitar que se pierda o se pierda.
  2. Comunicación inalámbrica: el módulo de comunicación inalámbrica incorporado puede comunicarse con el centro de comando para facilitar el contacto y la coordinación entre el operador y el centro de comando.
  3. Detección de colisiones: el módulo de detección de colisiones incorporado puede detectar el impacto en la cabeza del operador en tiempo real y enviar una señal de alarma o socorro a tiempo.
  4. Detección de temperatura: el módulo de detección de temperatura integrado puede detectar la temperatura del entorno de trabajo en tiempo real para evitar problemas de seguridad como altas temperaturas y golpes de calor.
  5. Función de iluminación: las luces LED integradas pueden proporcionar iluminación a los operadores para facilitar las operaciones durante la noche o en entornos con poca luz.
  6. Pantalla de información: la pantalla LCD o la pantalla LED se configura en el casco, que puede mostrar información como la ubicación del operador, el estado de comunicación, la temperatura, etc.

Realización técnica

Los primeros cascos inteligentes se basarán en Linux incorporado. Con el desarrollo de esta tecnología, teniendo en cuenta la facilidad de uso y otros factores, la mayoría de los cascos inteligentes convencionales actuales se implementan en la plataforma Android. Este artículo toma la plataforma Android como ejemplo para presenta Next, las funciones principales que los cascos inteligentes deben admitir.

Permítanme hablar primero de la arquitectura técnica:

 

diseño de funciones:

  •  [Formato de video] H.264/H.265 (Android H.265 codificado);
  •  [Formato de audio] G.711 Una ley, AAC;
  •  [Ajuste de volumen] El terminal de adquisición de la plataforma Android admite el ajuste de volumen en tiempo real;
  •  [Codificación rígida H.264] Admite codificación rígida H.264 para modelos específicos;
  •  [Codificación rígida H.265] Admite codificación rígida H.265 para modelos específicos;
  •  [Configuración de parámetros codificados por software y codificados] admite intervalo de gop, velocidad de fotogramas, configuración de velocidad de bits;
  •  [Configuración de parámetros de codificación suave] Admite perfil de codificación suave, velocidad de codificación suave y configuración de tasa de bits variable;
  • Admite transmisión de paquete PS de video, audio y video puro;
  • Admite el modo pasivo RTP SOBRE UDP y RTP SOBRE TCP (cliente de transmisión de medios TCP);
  • Admite la configuración TCP/UDP del protocolo de transmisión de red del canal de señalización;
  • Soporte de registro, cancelación, actualización de registro y configuración de validez de registro;
  • Respuesta de consulta de directorio de equipos de soporte;
  • Admite mecanismo de latidos cardíacos, admite intervalos de latidos cardíacos, configuración de tiempos de detección de latidos cardíacos;
  • Admite suscripción y notificación de ubicación de dispositivos móviles (MobilePosition);
  • Admite transmisión de voz;
  • Admite intercomunicador de voz;
  • Admite control PTZ y consulta de posición preestablecida;
  •  [Marca de agua en tiempo real] admite marca de agua de texto dinámico, marca de agua png;
  •  [Mirror] La plataforma Android admite la función de espejo en tiempo real de la cámara frontal;
  •  [Silencio en tiempo real] Admite silenciar/reactivar silencio en tiempo real;
  •  [Instantánea en tiempo real] Admite instantáneas en tiempo real;
  •  [Reducción de ruido] Admite procesamiento de reducción de ruido, ganancia automática y detección de VAD causada por sonidos ambientales e interferencias de teléfonos móviles;
  •  [Acoplamiento de datos de video antes de la codificación externa] Admite el acoplamiento de datos YUV;
  •  [Acoplamiento de datos de audio antes de la codificación externa] Admite acoplamiento PCM;
  •  [Acoplamiento de datos de video después de la codificación externa] Admite acoplamiento de datos H.264 externo;
  •  [Acoplamiento de datos de audio después de la codificación externa] Acoplamiento de datos AAC externo;
  •  [Función de grabación extendida] Admite el uso combinado con el módulo de grabación, funciones relacionadas con la grabación.

Tome como ejemplo el módulo de acceso al dispositivo GB28181 de la plataforma Android de Daniu Live SDK. Si necesita conectarse al casco inteligente GB28181, debe prestar atención a las dos partes de señalización y datos multimedia. Esta es la idea general de diseño:

GBSIPAgentListener se relaciona principalmente con el registro GB28181, el latido del corazón, DevicePosition, etc., como el registro exitoso, el tiempo de espera del registro, el error de la capa de transporte de la red de registro, el latido del corazón anormal, el procesamiento de la solicitud de posición del dispositivo:

public interface GBSIPAgentListener
{
    /*注册成功
    * @param dateString: 服务器日期,用来校准设备端时间,用户自行决定是否校准设备时间
    */
    void ntsRegisterOK(String dateString);

    /*
    *注册超时
    */
    void ntsRegisterTimeout();

    /*
    *注册网络传输层异常
    */
    void ntsRegisterTransportError(String errorInfo);

    /*
    *心跳达到异常次数
    */
    void ntsOnHeartBeatException(int exceptionCount, String lastExceptionInfo);

    /*
     * 设备位置请求, 这个主要用在移动设备位置订阅上
     * @param interval 请求间隔, 单位是毫秒
     */
    void ntsOnDevicePositionRequest(String deviceId, int interval);
}

GBSIPAgentPlayListener trata principalmente con Invite, Ack, Bye, etc. de GB28181:

public interface GBSIPAgentPlayListener {

    /*
     *收到s=Play的实时视音频点播
     */
    void ntsOnInvitePlay(String deviceId, SessionDescription sessionDescription);

    /*
     *发送play invite response 异常
     */
    void ntsOnPlayInviteResponseException(String deviceId, int statusCode, String errorInfo);

    /*
     * 收到CANCEL play INVITE请求
     */
    void ntsOnCancelPlay(String deviceId);

    /*
     * 收到Ack
     */
    void ntsOnAckPlay(String deviceId);

    /*
     * 收到Bye
     */
    void ntsOnByePlay(String deviceId);

    /*
     * 不是在收到BYE Message情况下, 终止Play
     */
    void ntsOnTerminatePlay(String deviceId);

    /*
     * Play会话对应的对话终止, 一般不会出发这个回调,目前只有在响应了200K, 但在64*T1时间后还没收到ACK,才可能会出发
    收到这个, 请做相关清理处理
    */
    void ntsOnPlayDialogTerminated(String deviceId);
}

GBSIPAgentAudioBroadcastListener se relaciona principalmente con el procesamiento de transmisión de voz GB28181. Si tiene necesidades relacionadas con la transmisión de voz, puede consultar el ejemplo de demostración para darse cuenta:

public interface GBSIPAgentAudioBroadcastListener {

    /*
     *收到语音广播通知
     */
    void ntsOnNotifyBroadcastCommand(String fromUserName, String fromUserNameAtDomain, String sn, String sourceID, String targetID);

    /*
     *需要准备接受语音广播的SDP内容
     */
    void ntsOnAudioBroadcast(String commandFromUserName, String commandFromUserNameAtDomain, String sourceID, String targetID);

    /*
     *音频广播, 发送Invite请求异常
     */
    void ntsOnInviteAudioBroadcastException(String sourceID, String targetID, String errorInfo);

    /*
     *音频广播, 等待Invite响应超时
     */
    void ntsOnInviteAudioBroadcastTimeout(String sourceID, String targetID);

    /*
     *音频广播, 收到Invite消息最终响应
     */
    void ntsOnInviteAudioBroadcastResponse(String sourceID, String targetID, int statusCode, SessionDescription sessionDescription);

    /*
     * 音频广播, 收到BYE Message
     */
    void ntsOnByeAudioBroadcast(String sourceID, String targetID);


    /*
     * 不是在收到BYE Message情况下, 终止音频广播
     */
    void ntsOnTerminateAudioBroadcast(String sourceID, String targetID);
}

GBSIPAgentDeviceControlListener se relaciona principalmente con el control de dispositivos GB28181, como el inicio remoto y el control PTZ:

public interface GBSIPAgentDeviceControlListener {

    /*
     * 收到远程启动控制命令
     */
    void ntsOnDeviceControlTeleBootCommand(String deviceId, String teleBootValue);

    /*
    * 云台控制
     */
    void ntsOnDeviceControlPTZCmd(String deviceId, String typeValue);
}

GBSIPAgentQueryCommandListener es principalmente para los comandos de consulta GB28181, como la consulta de posición preestablecida:

public interface GBSIPAgentQueryCommandListener {

    /*
     * 设备预置位查询
     */
    void ntsOnDevicePresetQueryCommand(String fromUserName, String fromUserNameAtDomain, String sn, String deviceId);
}

GBSIPAgentTalkListener se ocupa principalmente del intercomunicador de voz GB28181:

public interface GBSIPAgentTalkListener {
    /*
     *收到s=Talk 语音对讲
     */
    void ntsOnInviteTalk(String deviceId, SessionDescription sessionDescription);

    /*
     *发送talk invite response 异常
     */
    void ntsOnTalkInviteResponseException(String deviceId, int statusCode, String errorInfo);

    /*
     * 收到CANCEL Talk INVITE请求
     */
    void ntsOnCancelTalk(String deviceId);

    /*
     * 收到Ack
     */
    void ntsOnAckTalk(String deviceId);

    /*
     * 收到Bye
     */
    void ntsOnByeTalk(String deviceId);

    /*
     * 不是在收到BYE Message情况下, 终止Talk
     */
    void ntsOnTerminateTalk(String deviceId);

    /*
     * Talk会话对应的对话终止, 一般不会出发这个回调,目前只有在响应了200K, 但在64*T1时间后还没收到ACK,才可能会出发
    收到这个, 请做相关清理处理
    */
    void ntsOnTalkDialogTerminated(String deviceId);
}

Resumir

Además de la interacción de señalización, no se describirá aquí la codificación y transmisión de datos multimedia. El casco inteligente GB28181 es un casco que integra una variedad de tecnologías avanzadas, que pueden proporcionar a los operadores posicionamiento en tiempo real, comunicación inalámbrica, detección de colisiones, detección de temperatura, funciones de iluminación y visualización de información, etc. eficiencia.

Supongo que te gusta

Origin blog.csdn.net/renhui1112/article/details/132093800
Recomendado
Clasificación