음파 통신 장치 및 방법

申请号 KR20150073219 申请日 2015-05-26 公开(公告)号 KR101568314B1 公开(公告)日 2015-11-12
申请人 DANSOLPLUS CO LTD; YIM CHANG SOON; 发明人 YIM CHANG SOON;
摘要 본발명은음파통신장치에관한것으로서, 음파를송신하고이를수신하여데이터를주고받는음파통신장치이다. 본발명의실시형태는상기음파송신부의하드웨어특성에따른오차를보정하는보정값별로보정주파수가할당된보정주파수대역을설정하여, 보정값 '0'에보정기준주파수를할당한하드웨어보정테이블; 데이터자리수에할당된데이터주파수를설정된기본데시벨의크기로발생시키며, 음파수신시에가장가까운곳에서송신된음파에실린데이터를수신하기위한분리수신필터주파수를상기기본데시벨의크기로발생시키고, 하드웨어발신보정을위한상기보정기준주파수를상기기본데시벨의크기로발생시키는음파송신부; 및상기음파송신부에서송신한음파신호를수신하여상기데이터주파수별로데시벨을추출하여배열시킨후, 상기하드웨어보정테이블을이용하여추출한보정값만큼배열을시프트시켜보정을하고, 분리수신필터주파수의대역중에서데시벨이가장큰 분리수신필터주파수에할당된배열인자의개수만큼상기데이터주파수의데시벨이큰 순서대로추출하여데이터를복원하는음파수신부;를포함할수 있다.
权利要求
  • 음파 송신부의 하드웨어 특성에 따른 오차를 보정하는 보정값별로 보정 주파수가 할당된 보정 주파수 대역을 설정하여, 보정값 '0'에 보정 기준 주파수를 할당한 하드웨어 보정 테이블;
    데이터 자리수에 할당된 데이터 주파수를 설정된 기본 데시벨의 크기로 발생시키며, 음파 수신 시에 가장 가까운 곳에서 송신된 음파에 실린 데이터를 수신하기 위한 분리 수신 필터 주파수를 상기 기본 데시벨의 크기로 발생시키고, 하드웨어 발신 보정을 위한 상기 보정 기준 주파수를 상기 기본 데시벨의 크기로 발생시키는 음파 송신부; 및
    상기 음파 송신부에서 송신한 음파 신호를 수신하여 상기 데이터 주파수별로 데시벨을 추출하여 배열시킨 후, 상기 하드웨어 보정 테이블을 이용하여 추출한 보정값만큼 배열을 시프트시켜 보정을 하고, 분리 수신 필터 주파수의 대역 중에서 데시벨이 가장 큰 분리 수신 필터 주파수에 할당된 배열 인자의 개수만큼 상기 데이터 주파수의 데시벨이 큰 순서대로 추출하여 데이터를 복원하는 음파 수신부;
    를 포함하는 음파 통신 장치.
  • 청구항 1에 있어서, 상기 음파 송신부는,
    2진수 송신 데이터의 개수와 패리티 비트의 개수를 더한 데이터 자리수를 배열 인자로 가지는 음파 송수신 배열을 생성하여, 상기 데이터 자리수에 동일한 간격을 가지는 각각 다른 데이터 주파수를 할당한 데이터 주파수 블록을 생성하며, 상기 데이터 자리수마다 각각 다른 분리 수신 필터 주파수를 할당한 분리 수신 필터 주파수 블록을 생성하는 데이터 주파수 생성 모듈; 및
    송신하려는 데이터를 2진수로 변환하여 변환된 값이 '1'을 가지는 데이터 자리수에 할당된 데이터 주파수를 설정된 기본 데시벨의 크기로 발생시키며, 상기 변환된 값이 '1'을 가지는 데이터의 개수와 동일한 데이터 자리수에 할당된 분리 수신 필터 주파수를 상기 기본 데시벨의 크기로 발생시키며, 하드웨어 발신 보정을 위한 보정 기준 주파수를 상기 기본 데시벨의 크기로 발생시키는 데이터 주파수 발신 모듈;
    을 포함하는 음파 통신 장치.
  • 청구항 2에 있어서, 상기 음파 송신부는,
    암호화키를 생성하고, 생성되는 암호화 키를 이용하여 암호화 좌측 시프트값과 암호화 우측 시프트값을 생성하여, 상기 데이터 주파수 블록과 분리 수신 필터 주파수 블록으로 된 주파수 블록의 데이터 자리수 중에서 홀수열에 배치된 주파수를 상기 암호화 좌측 시프트값만큼 좌측으로 이동시켜 교체하여, 상기 주파수 블록의 데이터 자리수 중에서 짝수열에 배치된 주파수를 상기 암호화 우측 시프트값만큼 우측으로 이동시켜 교체하여 암호화하는 주파수 블록 암호화 모듈;을 포함하며,
    상기 데이터 주파수 발신 모듈은, 암호화된 주파수 블록의 데이터 자리수에 할당된 주파수에 대하여 주파수 발신을 수행하는 음파 통신 장치.
  • 청구항 3에 있어서,
    음파 송신부에 내장된 타이머의 시간을 조합하거나, 네트워크에 연결된 서버의 시간을 조합하여 암호화 키를 생성하며, 상기 암호화 키의 홀수열이나 짝수열 중 어느 하나의 열을 합하여 암호화 좌측 시프트값으로 산출하며, 상기 암호화 키의 나머지 다른 열을 합하여 암호화 우측 시프트값을 생성하는 음파 통신 장치.
  • 청구항 2에 있어서,
    N번째 데이터 자리수에 할당되는 분리 수신 필터 주파수는, N-1 데이터 자리수에 할당되는 데이터 주파수와 N+1 데이터 자리수에 할당되는 데이터 주파수의 중간 주파수임을 특징 하는 음파 통신 장치.
  • 청구항 3에 있어서, 상기 음파 수신부는,
    수신되는 음파 신호를 설정된 샘플링 간격으로 고속퓨리에변환(FFT)하여 데시벨을 추출하여 샘플링 주파수 배열에 배치하는 고속 퓨리에 변환 모듈;
    상기 보정 주파수 대역에서 가장 큰 데시벨이 검출되는 주파수를 보정 주파수로서 결정하며, 상기 보정 주파수에 할당된 보정값만큼 상기 샘플링 주파수 배열에 배치된 데시벨을 이동시켜 수신 보정하는 수신 보정 모듈;
    상기 암호화 키를 이용하여 복호화 좌측 시프트값과 복호화 우측 시프트값을 생성하여 상기 음파 송수신 배열의 배열 인자 중에서 홀수열에 배치된 주파수를 상기 복호화 좌측 시프트값만큼 좌측으로 이동시켜 교체하며, 상기 음파 송수신 배열의 배열 인자 중에서 짝수열에 배치된 주파수를 상기 복호화 우측 시프트값만큼 우측으로 이동시켜 교체한 후, 상기 수신 보정된 샘플링 주파수 배열 중에서 상기 데이터 주파수와 상기 데이터 주파수에 배치된 데시벨을 추출하며, 상기 수신 보정된 샘플링 주파수 배열 중에서 상기 분리 수신 필터 주파수와 상기 분리 수신 필터 주파수에 배치된 데시벨을 추출하여 상기 음파 송수신 배열에 배치하는 복호화 모듈; 및
    상기 복호화된 음파 송수신 배열에서 분리 수신 필터 주파수에 배치된 데시벨 중에서 데시벨이 가장 큰 분리 수신 필터 주파수를 추출하여 추출한 분리 수신 필터 주파수에 할당된 상기 음파 송수신 배열의 배열 인자의 개수만큼 데이터 주파수의 데시벨이 큰 순서대로 배열 인자를 추출하여 데이터를 복원하는 음파 데이터 분리 모듈;
    을 포함하는 음파 통신 장치.
  • 청구항 6에 있어서, 상기 음파 통신 장치는,
    상기 음파 데이터 분리 모듈을 통하여 복원된 데이터에서 상기 패리티 비트를 이용하여 복원된 데이터의 유효성 검증을 수행하는 유효성 검증 모듈;을 포함하는 음파 통신 장치.
  • 음파를 송신하는 스피커의 하드웨어 특성에 따른 오차를 보정하는 보정값별로 보정 주파수가 할당된 보정 주파수 대역을 설정하여, 보정값 '0'에 보정 기준 주파수를 할당하여 하드웨어 보정 테이블을 생성하는 과정;
    데이터 주파수별로 데이터를 할당하기 위한 데이터 주파수 블록을 생성하며, 음파 수신 시에 가장 가까운 곳에서 송신된 음파에 실린 데이터를 수신하기 위한 분리 수신 필터 주파수 블록을 생성하는 음파 송신 과정; 및
    음파 송신부에서 송신한 음파 신호를 수신하여 상기 데이터 주파수별로 데시벨을 추출하여 배열시킨 후, 상기 하드웨어 보정 테이블을 이용하여 추출한 보정값만큼 배열을 시프트시켜 보정을 하고, 분리 수신 필터 주파수의 대역 중에서 데시벨이 가장 큰 분리 수신 필터 주파수에 할당된 배열 인자의 개수만큼 상기 데이터 주파수의 데시벨이 큰 순서대로 추출하여 데이터를 복원하는 음파 수신 과정;
    을 포함하는 음파 통신 방법.
  • 청구항 8에 있어서, 상기 음파 송신 과정은,
    2진수 송신 데이터의 개수와 패리티 비트의 개수를 더한 데이터 자리수를 배열 인자로 가지는 음파 송수신 배열을 생성하여, 상기 데이터 자리수에 동일한 간격을 가지는 각각 다른 데이터 주파수를 할당한 데이터 주파수 블록을 생성하며, 상기 데이터 자리수마다 각각 다른 분리 수신 필터 주파수를 할당한 분리 수신 필터 주파수 블록을 생성하는 주파수 블록 생성 과정; 및
    송신하려는 데이터를 2진수로 변환하여 변환된 값이 '1'을 가지는 데이터 자리수에 할당된 데이터 주파수를 설정된 기본 데시벨의 크기로 발생시키며, 상기 변환된 값이 '1'을 가지는 데이터의 개수와 동일한 데이터 자리수에 할당된 분리 수신 필터 주파수를 상기 기본 데시벨의 크기로 발생시키며, 하드웨어 발신 보정을 위한 보정 기준 주파수를 상기 기본 데시벨의 크기로 발생시키는 주파수 발신 과정;
    을 포함하는 음파 통신 방법.
  • 청구항 9에 있어서, 상기 주파수 블록 생성 과정과 주파수 발신 과정 사이에,
    암호화키를 생성하고, 생성되는 암호화 키를 이용하여 암호화 좌측 시프트값과 암호화 우측 시프트값을 생성하여, 상기 데이터 주파수 블록과 분리 수신 필터 주파수 블록으로 된 주파수 블록의 데이터 자리수 중에서 홀수열에 배치된 주파수를 상기 암호화 좌측 시프트값만큼 좌측으로 이동시켜 교체하여, 상기 주파수 블록의 데이터 자리수 중에서 짝수열에 배치된 주파수를 상기 암호화 우측 시프트값만큼 우측으로 이동시켜 교체하여 암호화하는 과정;을 더 포함하며,
    상기 암호화된 주파수 블록의 데이터 자리수에 할당된 주파수에 대하여 상기 주파수 발신 과정을 수행하는 음파 통신 방법.
  • 청구항 10에 있어서, 상기 음파 수신 과정은,
    수신되는 음파 신호를 설정된 샘플링 간격으로 고속퓨리에변환(FFT)하여 데시벨을 추출하여 샘플링 주파수 배열에 배치하는 고속 퓨리에 변환 과정;
    상기 보정 주파수 대역에서 가장 큰 데시벨이 검출되는 주파수를 보정 주파수로서 결정하며, 상기 보정 주파수에 할당된 보정값만큼 상기 샘플링 주파수 배열에 배치된 데시벨을 이동시켜 수신 보정하는 수신 보정 과정;
    상기 암호화 키를 이용하여 복호화 좌측 시프트값과 복호화 우측 시프트값을 생성하여 상기 음파 송수신 배열의 배열 인자 중에서 홀수열에 배치된 주파수를 상기 복호화 좌측 시프트값만큼 좌측으로 이동시켜 교체하며, 상기 음파 송수신 배열의 배열 인자 중에서 짝수열에 배치된 주파수를 상기 복호화 우측 시프트값만큼 우측으로 이동시켜 교체한 후, 상기 수신 보정된 샘플링 주파수 배열 중에서 상기 데이터 주파수와 상기 데이터 주파수에 배치된 데시벨을 추출하며, 상기 수신 보정된 샘플링 주파수 배열 중에서 상기 분리 수신 필터 주파수와 상기 분리 수신 필터 주파수에 배치된 데시벨을 추출하여 상기 음파 송수신 배열에 배치하는 복호화 과정; 및
    상기 복호화된 음파 송수신 배열에서 분리 수신 필터 주파수에 배치된 데시벨 중에서 데시벨이 가장 큰 분리 수신 필터 주파수를 추출하여 추출한 분리 수신 필터 주파수에 할당된 상기 음파 송수신 배열의 배열 인자의 개수만큼 상기 데이터 주파수의 데시벨이 큰 순서대로 배열 인자를 추출하여 데이터를 복원하는 음파 데이터 분리 과정;
    을 포함하는 음파 통신 방법.
  • 청구항 11에 있어서, 상기 음파 데이터 분리 과정이 있은 후,
    상기 음파 데이터 분리 모듈을 통하여 복원된 데이터에서 상기 패리티 비트를 이용하여 복원된 데이터의 유효성 검증을 수행하는 유효성 검증 과정을 가지는 음파 통신 방법.
  • 说明书全文

    음파 통신 장치 및 방법{Apparatus and method for sound wave communication}

    본 발명은 음파 통신 장치 및 방법에 관한 것으로서, 음파를 송신하고 이를 수신하여 데이터를 주고 받는 음파 통신 장치 및 방법이다.

    와이파이(WiFi), 블루투스(Bluetooth) 등과 같은 근거리 무선 통신을 이용한 게임 및 채팅이 활성화되려면 현재 시중에서 사용 중인 거의 모든 이동통신단말기에서 별도의 장치를 추가하지 않고 소프트웨어 다운로드만으로 사용 가능한 근거리 통신방식이 필요하다. 이동통신단말기는 기본적으로 음성통신 기능이 구비되어 있는 점에 착안하면 음파를 이용한 통신이 유효한 대안이 될 수 있다.

    또한, 많은 경우에 음파통신은 블루투스 등 RF 통신보다 저전력 통신이 가능하다. 음파통신은 바이오메트릭스(Biometrics, Inc.)의 미국 특허 제 5,848,027호에 개시되어 있다. 상기 특허에서는 디지털 디스플레이 손목시계 등의 휴대용 단말의 비프음을 이용하여 PC에 디지털 데이터를 전송하는 방법과 시스템을 기술한다.

    이 시스템은 데이터를 전송하기 위하여 BFSK(Binary Frequency Shift Keying)변조와 ASK(Amplitude Shift Keying) 등의 CW(Continuous Waveform)변조를 이용한다.

    BFSK 변조 방식은 2개의 특정 주파수 음파에 각각 0과 1을 할당하는 방식이고, CW 변조 방식은 주파수와 무관하게 특정 세기 이상의 소리를 특정 시간 이상 지속하는 것을 1로 할당하고, 소리가 없는 상태를 특정 시간 이상 지속하는 것을 0으로 할당하는 방식이다. 이러한 변조 방식에 의한 통신은 특정 단위 시간 동안 2개 형태의 음파로 1비트의 데이터만을 전송할 수 있다.

    통상적인 이동통신단말기에서 사용하는 음파는 전파에 비해 상당히 저주파이기 때문에 전송할 데이터 열을 구분할 시간인 단위 시간이 전파에 비해 상당히 길다. 따라서 미국 특허 제 5,848,027호와 같이 2가지 형태의 음파만을 이용하여 단위 시간 동안 1비트만을 전송할 경우 전송속도가 낮을 수밖에 없다.

    이러한 문제를 해결하기 위하여, 2가지 형태의 음파만이 아닌 다양한 주파수음을 갖는 음파를 사용하여 통신하는 방식이 제안되었다. 즉, 사용되는 주파수음을 음악에서 사용되는 음높이 주파수로 정하여 각각의 음높이 주파수에 데이터 디지털값을 대응시키고 다양한 주파수음을 전송하여 디코드함으로써 통신한다. 이렇게 하여 단위 시간당 다수의 비트를 전송하게 된다.

    그런데, 상기와 같이 2진수 비트 또는 2진수를 초과하는 비트를 이용하여 음파 통신을 하는데 있어서, 하드웨어 특성을 고려하지 않은 단점이 있다. 즉, 스피커를 통하여 음파를 발신할 때 스피커의 하드웨어 특성에 따라서 원래 설정된 기준 주파수가 아닌 약간의 오차를 가지는 다른 주파수에 실려 음파가 발신될 수 있는데, 이를 수신한 마이크에서 원래의 기준 주파수에서 복조하기 때문에 정확한 데이터를 수신하지 못하는 문제가 발생할 수 있다.

    또한 기존의 음파 통신은 음파의 특성상 동일한 영역에서 서로 다른 신호를 발생시에 데이터를 분리할 수 있는 기준이 없기 때문에, 다수의 음파가 중복되는 경우 데이터를 수신할 수 없는 문제가 있다.

    미국등록특허 제5848027호

    본 발명의 기술적 과제는 하드웨어 특성에 따른 오차를 보정하는데 있다. 또한 다수의 음파가 중복되는 경우에도 가장 가까운 곳에서 발신되는 데이터를 정확하게 수신할 수 있도록 하는데 있다.

    본 발명의 실시 형태는 상기 음파 송신부의 하드웨어 특성에 따른 오차를 보정하는 보정값별로 보정 주파수가 할당된 보정 주파수 대역을 설정하여, 보정값 '0'에 보정 기준 주파수를 할당한 하드웨어 보정 테이블; 데이터 자리수에 할당된 데이터 주파수를 설정된 기본 데시벨의 크기로 발생시키며, 음파 수신 시에 가장 가까운 곳에서 송신된 음파에 실린 데이터를 수신하기 위한 분리 수신 필터 주파수를 상기 기본 데시벨의 크기로 발생시키고, 하드웨어 발신 보정을 위한 상기 보정 기준 주파수를 상기 기본 데시벨의 크기로 발생시키는 음파 송신부; 및 상기 음파 송신부에서 송신한 음파 신호를 수신하여 상기 데이터 주파수별로 데시벨을 추출하여 배열시킨 후, 상기 하드웨어 보정 테이블을 이용하여 추출한 보정값만큼 배열을 시프트시켜 보정을 하고, 분리 수신 필터 주파수의 대역 중에서 데시벨이 가장 큰 분리 수신 필터 주파수에 할당된 배열 인자의 개수만큼 상기 데이터 주파수의 데시벨이 큰 순서대로 추출하여 데이터를 복원하는 음파 수신부;를 포함할 수 있다.

    상기 음파 송신부는, 2진수 송신 데이터의 개수와 패리티 비트의 개수를 더한 데이터 자리수를 배열 인자로 가지는 음파 송수신 배열을 생성하여, 상기 데이터 자리수에 동일한 간격을 가지는 각각 다른 데이터 주파수를 할당한 데이터 주파수 블록을 생성하며, 상기 데이터 자리수마다 각각 다른 분리 수신 필터 주파수를 할당한 분리 수신 필터 주파수 블록을 생성하는 데이터 주파수 생성 모듈; 및

    송신하려는 데이터를 2진수로 변환하여 변환된 값이 '1'을 가지는 데이터 자리수에 할당된 데이터 주파수를 설정된 기본 데시벨의 크기로 발생시키며, 상기 변환된 값이 '1'을 가지는 데이터의 개수와 동일한 데이터 자리수에 할당된 분리 수신 필터 주파수를 상기 기본 데시벨의 크기로 발생시키며, 하드웨어 발신 보정을 위한 보정 기준 주파수를 상기 기본 데시벨의 크기로 발생시키는 데이터 주파수 발신 모듈;을 포함할 수 있다.

    상기 음파 송신부는, 암호화키를 생성하고, 생성되는 암호화 키를 이용하여 암호화 좌측 시프트값과 암호화 우측 시프트값을 생성하여, 상기 데이터 주파수 블록과 분리 수신 필터 주파수 블록으로 된 주파수 블록의 데이터 자리수 중에서 홀수열에 배치된 주파수를 상기 암호화 좌측 시프트값만큼 좌측으로 이동시켜 교체하여, 상기 주파수 블록의 데이터 자리수 중에서 짝수열에 배치된 주파수를 상기 암호화 우측 시프트값만큼 우측으로 이동시켜 교체하여 암호화하는 주파수 블록 암호화 모듈;을 포함하며, 상기 데이터 주파수 발신 모듈은, 암호화된 주파수 블록의 데이터 자리수에 할당된 주파수에 대하여 주파수 발신을 수행할 수 있다.

    음파 송신부에 내장된 타이머의 시간을 조합하거나, 네트워크에 연결된 서버의 시간을 조합하여 암호화 키를 생성하며, 상기 암호화 키의 홀수열이나 짝수열 중 어느 하나의 열을 합하여 암호화 좌측 시프트값으로 산출하며, 상기 암호화 키의 나머지 다른 열을 합하여 암호화 우측 시프트값을 생성할 수 있다.

    N번째 데이터 자리수에 할당되는 분리 수신 필터 주파수는, N-1 데이터 자리수에 할당되는 데이터 주파수와 N+1 데이터 자리수에 할당되는 데이터 주파수의 중간 주파수임을 특징 할 수 있다.

    상기 음파 수신부는, 수신되는 음파 신호를 설정된 샘플링 간격으로 고속퓨리에변환(FFT)하여 데시벨을 추출하여 샘플링 주파수 배열에 배치하는 고속 퓨리에 변환 모듈; 상기 보정 주파수 대역에서 가장 큰 데시벨이 검출되는 주파수를 보정 주파수로서 결정하며, 상기 보정 주파수에 할당된 보정값만큼 상기 샘플링 주파수 배열에 배치된 데시벨을 이동시켜 수신 보정하는 수신 보정 모듈; 상기 암호화 키를 이용하여 복호화 좌측 시프트값과 복호화 우측 시프트값을 생성하여 상기 음파 송수신 배열의 배열 인자 중에서 홀수열에 배치된 주파수를 상기 복호화 좌측 시프트값만큼 좌측으로 이동시켜 교체하며, 상기 음파 송수신 배열의 배열 인자 중에서 짝수열에 배치된 주파수를 상기 복호화 우측 시프트값만큼 우측으로 이동시켜 교체한 후, 상기 수신 보정된 샘플링 주파수 배열 중에서 상기 데이터 주파수와 상기 데이터 주파수에 배치된 데시벨을 추출하며, 상기 수신 보정된 샘플링 주파수 배열 중에서 상기 분리 수신 필터 주파수와 상기 분리 수신 필터 주파수에 배치된 데시벨을 추출하여 상기 음파 송수신 배열에 배치하는 복호화 모듈; 및 상기 복호화된 음파 송수신 배열에서 분리 수신 필터 주파수에 배치된 데시벨 중에서 데시벨이 가장 큰 분리 수신 필터 주파수를 추출하여 추출한 분리 수신 필터 주파수에 할당된 상기 음파 송수신 배열의 배열 인자의 개수만큼 데이터 주파수의 데시벨이 큰 순서대로 배열 인자를 추출하여 데이터를 복원하는 음파 데이터 분리 모듈;을 포함할 수 있다.

    상기 음파 통신 장치는, 상기 음파 데이터 분리 모듈을 통하여 복원된 데이터에서 상기 패리티 비트를 이용하여 복원된 데이터의 유효성 검증을 수행하는 유효성 검증 모듈;을 포함할 수 있다.

    본 발명의 실시 형태는, 음파를 송신하는 스피커의 하드웨어 특성에 따른 오차를 보정하는 보정값별로 보정 주파수가 할당된 보정 주파수 대역을 설정하여, 보정값 '0'에 보정 기준 주파수를 할당하여 하드웨어 보정 테이블을 생성하는 과정; 데이터 주파수별로 데이터를 할당하기 위한 데이터 주파수 블록을 생성하며, 음파 수신 시에 가장 가까운 곳에서 송신된 음파에 실린 데이터를 수신하기 위한 분리 수신 필터 주파수 블록을 생성하는 음파 송신 과정; 및 음파 송신부에서 송신한 음파 신호를 수신하여 상기 데이터 주파수별로 데시벨을 추출하여 배열시킨 후, 상기 하드웨어 보정 테이블을 이용하여 추출한 보정값만큼 배열을 시프트시켜 보정을 하고, 분리 수신 필터 주파수의 대역 중에서 데시벨이 가장 큰 분리 수신 필터 주파수에 할당된 배열 인자의 개수만큼 상기 데이터 주파수의 데시벨이 큰 순서대로 추출하여 데이터를 복원하는 음파 수신 과정;을 포함할 수 있다.

    상기 데이터 송신 과정은, 2진수 송신 데이터의 개수와 패리티 비트의 개수를 더한 데이터 자리수를 배열 인자로 가지는 음파 송수신 배열을 생성하여, 상기 데이터 자리수에 동일한 간격을 가지는 각각 다른 데이터 주파수를 할당한 데이터 주파수 블록을 생성하며, 상기 데이터 자리수마다 각각 다른 분리 수신 필터 주파수를 할당한 분리 수신 필터 주파수 블록을 생성하는 주파수 블록 생성 과정; 및 송신하려는 데이터를 2진수로 변환하여 변환된 값이 '1'을 가지는 데이터 자리수에 할당된 데이터 주파수를 설정된 기본 데시벨의 크기로 발생시키며, 상기 변환된 값이 '1'을 가지는 데이터의 개수와 동일한 데이터 자리수에 할당된 분리 수신 필터 주파수를 상기 기본 데시벨의 크기로 발생시키며, 하드웨어 발신 보정을 위한 보정 기준 주파수를 상기 기본 데시벨의 크기로 발생시키는 주파수 발신 과정;을 포함할 수 있다.

    상기 주파수 블록 생성 과정과 주파수 발신 과정 사이에, 암호화키를 생성하고, 생성되는 암호화 키를 이용하여 암호화 좌측 시프트값과 암호화 우측 시프트값을 생성하여, 상기 데이터 주파수 블록과 분리 수신 필터 주파수 블록으로 된 주파수 블록의 데이터 자리수 중에서 홀수열에 배치된 주파수를 상기 암호화 좌측 시프트값만큼 좌측으로 이동시켜 교체하여, 상기 주파수 블록의 데이터 자리수 중에서 짝수열에 배치된 주파수를 상기 암호화 우측 시프트값만큼 우측으로 이동시켜 교체하여 암호화하는 과정;을 더 포함하며, 상기 암호화된 주파수 블록의 데이터 자리수에 할당된 주파수에 대하여 상기 주파수 발신 과정을 수행할 수 있다.

    상기 음파 수신 과정은, 수신되는 음파 신호를 설정된 샘플링 간격으로 고속퓨리에변환(FFT)하여 데시벨을 추출하여 샘플링 주파수 배열에 배치하는 고속 퓨리에 변환 과정; 상기 보정 주파수 대역에서 가장 큰 데시벨이 검출되는 주파수를 보정 주파수로서 결정하며, 상기 보정 주파수에 할당된 보정값만큼 상기 샘플링 주파수 배열에 배치된 데시벨을 이동시켜 수신 보정하는 수신 보정 과정; 상기 암호화 키를 이용하여 복호화 좌측 시프트값과 복호화 우측 시프트값을 생성하여 상기 음파 송수신 배열의 배열 인자 중에서 홀수열에 배치된 주파수를 상기 복호화 좌측 시프트값만큼 좌측으로 이동시켜 교체하며, 상기 음파 송수신 배열의 배열 인자 중에서 짝수열에 배치된 주파수를 상기 복호화 우측 시프트값만큼 우측으로 이동시켜 교체한 후, 상기 수신 보정된 샘플링 주파수 배열 중에서 상기 데이터 주파수와 상기 데이터 주파수에 배치된 데시벨을 추출하며, 상기 수신 보정된 샘플링 주파수 배열 중에서 상기 분리 수신 필터 주파수와 상기 분리 수신 필터 주파수에 배치된 데시벨을 추출하여 상기 음파 송수신 배열에 배치하는 복호화 과정; 및 상기 복호화된 음파 송수신 배열에서 분리 수신 필터 주파수에 배치된 데시벨 중에서 데시벨이 가장 큰 분리 수신 필터 주파수를 추출하여 추출한 분리 수신 필터 주파수에 할당된 상기 음파 송수신 배열의 배열 인자의 개수만큼 상기 데이터 주파수의 데시벨이 큰 순서대로 배열 인자를 추출하여 데이터를 복원하는 음파 데이터 분리 과정;을 포함할 수 있다.

    상기 음파 데이터 분리 과정이 있은 후, 상기 음파 데이터 분리 모듈을 통하여 복원된 데이터에서 상기 패리티 비트를 이용하여 복원된 데이터의 유효성 검증을 수행하는 유효성 검증 과정을 가질 수 있다.

    본 발명의 실시 형태에 따르면 스피커를 통하여 음파를 발신할 때 스피커의 하드웨어 특성에 따라서 원래 설정된 기준 주파수가 아닌 약간의 오차를 가지는 다른 주파수에 실려 음파가 발신될 수 있는데, 이를 수신하는 수신단에서 수신 보정을 통하여 정확한 데이터를 수신할 수 있다. 또한 다수의 음파가 중복되는 경우에도 데이터를 정확하게 수신할 수 있다.

    도 1은 본 발명의 실시예에 따른 음파 통신 장치의 구성 블록도를 도시한 그림.
    도 2는 본 발명의 실시예에 따른 하드웨어 보정 테이블의 구성 예시를 도시한 그림이다.
    도 3은 본 발명의 실시예에 따른 음파 송신부의 구성 블록도.
    도 4는 본 발명의 실시예에 따른 주파수 블록을 나타낸 도표.
    도 5는 본 발명의 실시예에 따른 데이터 주파수 생성 모듈이 16진법 주파수 블록을 생성하는 예를 도시한 도표.
    도 6은 본 발명의 실시예에 따라 암호화키를 생성하고 시프트값이 생성되는 예를 도시한 도표.
    도 7은 본 발명의 실시예에 따른 좌측 시프트값을 이용하여 데이터 주파수가 이동되어 암호화되는 모습을 도시한 그림.
    도 8은 본 발명의 실시예에 따른 우측 시프트값을 이용하여 데이터 주파수가 이동되어 암호화되는 모습을 도시한 그림.
    도 9는 본 발명의 실시예에 따라 10진 데이터를 2진수로 변환하여 주파수에 실어 발생시키는 예를 도시한 도표.
    도 10은 본 발명의 실시예에 따라 16진 데이터를 2진수로 변환하여 주파수에 실어 발생시키는 예를 도시한 도표.
    도 11은 본 발명의 실시예에 따른 음파 수신부의 구성 블록도.
    도 12는 본 발명의 실시예에 따른 음파통신에 해당하는 주파수 대역만 주파수 간격을 가지는 샘플링 주파수 배열에 순차적으로 저장한 도표.
    도 13은 본 발명의 실시예에 따라 수신 보정 영역 데이터의 데시벨 값이 가장 크게 검출된 부분을 보정 값으로 사용하는 모습을 도시한 도표.
    도 14는 본 발명의 실시예에 따라 '-1'의 보정값이 이용되는 모습을 도시한 도표.
    도 15는 본 발명의 실시예에 따라 미리 정의된 수신 필터 대역의 데시벨값들을 나타낸 도표.
    도 16은 본 발명의 실시예에 따라 시프트값을 이용하여 데이터 주파수가 이동되어 복호화되는 모습을 도시한 그림.
    도 17은 본 발명의 실시예에 따른 수신 보정된 샘플링 주파수 배열 중에서 분리 수신 필터 주파수와 분리 수신 필터 주파수에 배치된 데시벨을 추출하여 저장한 도표.
    도 18은 본 발명의 실시예에 따른 복호화된 음파 송수신 배열에서 분리 수신 필터 주파수에 배치된 데시벨 중에서 데시벨이 가장 큰 분리 수신 필터 주파수를 추출하여 추출한 분리 수신 필터 주파수에 할당된 음파 송수신 배열의 배열 인자의 개수만큼 데이터 주파수의 데시벨이 큰 순서대로 추출하는 모습을 도시한 도표.
    도 19는 본 발명의 실시예에 따른 음파 통신 과정을 도시한 플로차트.
    도 20은 본 발명의 실시예에 따른 음파 송신 과정을 도시한 플로차트.
    도 21은 본 발명의 실시예에 따른 음파 수신 과정을 도시한 플로차트.

    이하, 이 발명이 속하는 기술분야에서 통상의 지식을 갖는 자가 이 발명을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여, 이 발명의 가장 바람직한 실시예를 첨부된 도면을 참조로 하여 상세히 설명하기로 한다. 이 발명의 목적, 작용 효과를 포함하여 기타 다른 목적들, 특징점들, 그리고 동작상의 이점들이 바람직한 실시예의 설명에 의해서 보다 명확해질 것이다. 하기에서 각 도면의 구성요소들에 참조부호를 부가함에 있어 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다.

    도 1은 본 발명의 실시예에 따른 음파 통신 장치의 구성 블록도를 도시한 그림이며, 도 2는 본 발명의 실시예에 따른 하드웨어 보정 테이블의 구성 예시를 도시한 그림이다.

    음파 통신 장치는, 하드웨어 보정 테이블, 음파 송신부(100), 및 음파 수신부(200)를 포함할 수 있다.

    하드웨어 보정 테이블은, 도 2에 도시한 바와 같이 음파 송신부(100)의 하드웨어 특성에 따른 오차를 보정하는 보정값별로 보정 주파수가 할당된 보정 주파수 대역을 설정하여, 보정값 '0'에 보정 기준 주파수를 할당한 메모리 테이블이다. 음파 신호를 발신할 때 스피커의 하드웨어 특성에 따라서 원래 설정된 기준 주파수가 아닌 약간의 오차를 가지는 다른 주파수에 실려 음파가 발신될 수 있는데, 이러한 하드웨어 특성에 의한 오차를 보정하기 위하여 동일한 하드웨어 보정 테이블을 음파 송신부(100) 및 음파 수신부(200)에 각각 구비한다. 보정값 '0'에 할당된 보정 주파수를 보정 기준 주파수라 하기로 한다. 하드웨어 보정 테이블의 예시를 도 2에 도시하였다. 도 2를 참조하면, 보정 주파수 대역은 18,065Hz에서 18,095Hz 대역을 가지며, 보정 주파수가 5Hz 간격으로 할당되어 18,065Hz에서는 3의 보정값을 가지며, 18,070Hz에서는 2의 보정값을 가지며, 18,075Hz에서는 1의 보정값을 가지며, 18,080Hz에서는 0의 보정값을 가지며, 18,085Hz에서는 -1의 보정값을 가지며, 18,090Hz에서는 -2의 보정값을 가지며, 18,095Hz에서는 -3의 보정값을 가질 수 있음을 알 수 있다. 따라서 0의 보정값을 가지는 18,080Hz가 보정 기준 주파수에 해당된다.

    이러한 하드웨어 보정 테이블의 보정값은 음파 송신부(100) 및 음파 수신부(200)에 동일한 값으로 저장된다.

    음파 송신부(100)는, 2진수의 '1'을 가지는 데이터 자리수에 할당된 데이터 주파수를 설정된 기본 데시벨의 크기로 발생시키며, 음파 수신 시에 가장 가까운 곳에서 송신된 음파에 실린 데이터를 수신하기 위한 분리 수신 필터 주파수를 상기 기본 데시벨의 크기로 발생시켜 스피커를 통해 음파를 송신한다.

    음파 송신부(100)는, 음파 수신부(200)의 마이크를 기동시키고 나서 음파 신호를 송신한다. 마이크는 임피던스가 작은 소자로 제작됨이 바람직하다. 음파 신호는 음파 주파수 대역, 예컨대, 18,000Hz ~ 19,800Hz 사이에 실리는 신호이다.

    특히, 본 발명의 음파 송신부(100)는, 하드웨어 특성에 의한 오차를 보정하는 하드웨어 특성 오차 보정 수단과, 다수의 음파 송신부(100)의 음파 송신으로 인하여 음파가 중복되어 수신되는 경우 음파 수신부(200)에서 제일 가까운 음파 송신부(100)에서 송신되는 음파만을 추출하여 수신할 수 있는 중복 음파 분리 수단을 제공한다.

    음파 송신부(100)는, 하드웨어 특성 오차 보정 수단으로서, 하드웨어 발신 보정을 위한 보정 주파수를 선택하여 기본 데시벨의 크기로 발신한다.

    또한 기존의 음파 통신은 음파의 특성상 동일한 영역에서 서로 다른 신호를 발생시에 데이터를 분리할 수 있는 기준이 없기 때문에, 다수의 음파가 중복되는 경우 데이터를 수신할 수 없는 문제가 있다. 이를 해결하기 위하여 본 발명의 음파 송신부(100)는, 중복 음파 분리 수단으로서 2진수의 '1'을 가지는 데이터 자리수에 할당된 데이터 주파수를 설정된 기본 데시벨의 크기로 발생시키며, 음파 수신 시에 가장 가까운 곳에서 송신된 음파에 실린 데이터를 수신하기 위한 분리 수신 필터 주파수를 상기 기본 데시벨의 크기로 발생시켜 스피커를 통해 음파를 송신한다. 이하, 도 3과 함께 음파 송신부(100)에 대하여 상술한다.

    음파 수신부(200)는, 음파 송신부(100)의 스피커를 통해 전송되는 음파 신호를 스피커에서 수신하여 데이터를 복원한다. 특히 본 발명의 음파 수신부(200)는 음파를 송신한 스피커의 특성을 고려한 보정을 수행하며, 또한 중복되는 음파 신호 중에서 가장 가까이서 발신된 음파 신호만을 추출하여 데이터를 복원할 수 있다. 이를 위해 음파 수신부(200)는, 음파 송신부(100)에서 송신한 음파 신호를 수신하여 상기 데이터 주파수별로 데시벨을 추출하여 배열시킨 후, 하드웨어 보정 테이블을 이용하여 추출한 보정값만큼 배열을 시프트시켜 보정을 하고, 분리 수신 필터 주파수의 대역 중에서 데시벨이 가장 큰 분리 수신 필터 주파수에 할당된 배열 인자의 개수만큼 상기 데이터 주파수의 데시벨이 큰 순서대로 추출하여 데이터를 복원한다. 이하, 상술한다.

    도 3은 본 발명의 실시예에 따른 음파 송신부(100)의 구성 블록도이다.

    음파 송신부(100)는, 데이터 주파수 생성 모듈(110), 주파수 블록 암호화 모듈(120), 및 데이터 주파수 발신 모듈(130)을 포함할 수 있다.

    데이터 주파수 생성 모듈(110)은, 2진법 데이터 주파수 블록을 생성하고 16진법 데이터 주파수 블록을 선택적으로 데이터 주파수를 생성할 수 있다.

    우선, 2진법 데이터 주파수 블록을 생성하는 예를 도 4와 함께 상술한다.

    2진법 주파수 블록 생성은 2진수 형식의 데이터를 수신하기 위한 데이터 주파수 블록과 동일한 영역에서 데이터 발신시 가까운 곳의 데이터를 수신하기 위한 분리 수신 필터 주파수를 할당한 분리 수신 필터 주파수 블록을 생성한다.

    이를 위해 데이터 주파수 생성 모듈(110)은, 2진수 송신 데이터 개수와 패리티 비트 개수를 더한 데이터 자리수를 배열 인자로 가지는 음파 송수신 배열을 생성하여, 데이터 자리수에 동일한 간격을 가지는 각각 다른 데이터 주파수를 할당한 데이터 주파수 블록을 생성하며, 데이터 자리수마다 각각 다른 분리 수신 필터 주파수를 할당한 분리 수신 필터 주파수 블록을 생성할 수 있다.

    예를 들어, 도 4를 참조하면, 총 34개의 배열 인자를 가지는 블록을 생성하여 각각 50Hz 단위의 데이터 주파수를 각각 가지는 데이터 주파수 블록과 분리 수신 필터 주파수 블록을 생성한다.

    전송하려는 데이터의 크기에 따라 주파수 간격을 조절하면 더 큰 데이터를 전송 할 수 있으며 마지막 2블록은 유효성 검사를 위한 패리티 영역으로 사용한다.

    다수의 스피커의 발신으로 인해 중첩 수신되는 음파 신호의 분리를 위한 수신 필터 주파수는 데이터 주파수 간격의 가운데 주파수를 사용한다. N번째 데이터 자리수에 할당되는 분리 수신 필터 주파수는, N-1 데이터 자리수에 할당되는 데이터 주파수와 N+1 데이터 자리수에 할당되는 데이터 주파수의 중간 주파수가 사용된다. 도 4의 예시를 참조하면 데이터 전송을 위한 블록 32개 유효성 검사를 위한 블록 2개로 2의 32승의 고유 값을 전송할 수 있다. 따라서 2 32 = 4,294,967,296개의 유효한 코드를 보낼 수 있다.

    도 4의 데이터 주파수 블록의 맨 마지막 33블록은 패리티 검출 주파수로 홀수 블록 주파수 발생 건수의 합을 2로 나누어 나머지가 1이면 발생, 0이면 발생시키지 않는다. 도 4의 데이터 주파수 블록의 맨 마지막 34블록은 패리티 검출 주파수로 짝수 블록 주파수 발생 건수의 합을 2로 나누어 나머지가 1이면 발생, 0이면 발생시키지 않는다.

    수신 필터 주파수는 데이터 전송 시 유일하게 1개의 주파수를 발생시키며 데이터 전송 블록의 1부터 34까지의 주파수 발생 개수를 표현한다. 예를 들어 2진수로 '11111111111111111111111111111111'(32개의 데이터 주파수와 2개의 패리티 주파수)발생시 총 34개에 해당하는 1,9750Hz의 주파수를 발생한다.

    한편, 2진법 주파수 전송은 16진법 주파수 전송보다 제한된 주파수 범위에서 더 많은 조합을 만들어 낼 수 있으나 주파수 간섭이 극히 많은 장소에서는 유효성 검사가 강화된 16진법 주파수 블록 생성이 바람직하다. 이하, 도 5와 함께 데이터 주파수 생성 모듈(110)이 16진법 주파수 블록을 생성하는 예를 설명한다.

    16진법 주파수 블록 생성은 16진수 형식의 데이터를 수신하기 위한 데이터 주파수 블록과 동일한 영역에서 데이터 발신 시 가까운 곳의 데이터를 수신하기 위한 음파데이터 분리 수신 필터 주파수 블록을 생성한다.

    도 5의 데이터 주파수 블록의 예시를 보면 5 × 8의 총 40개의 블록을 생성하여 각각 40hz 단위로 주파수를 나열하였다.

    전송하려는 데이터의 크기에 따라 주파수 간격을 조절하고 16진수 자리 수를 늘려주면 더 큰 데이터를 전송할 수 있으며 최 상단 열과 최 우측 열은 유효성 검사를 위한 패리티 영역으로 사용한다.

    다수의 스피커의 발신으로 인해 중첩 수신되는 음파 신호의 분리를 위한 수신필터 주파수는 데이터 주파수 간격의 가운데 주파수를 사용한다(2진법 주파수 블록 생성과 동일). 도 5의 예시는 16진수 7자리인 FFFFFFF까지 표현할 수 있는 데이터를 전송하는 주파수 블록을 생성한 것이다.

    도 5의 데이터 주파수 Y축 패리티 체크는 전송하는 주파수 블록의 열의 합에 2로 나누어 나머지가 1이면 주파수를 발생, 0이면 발생하지 않는다. X축 패리티 체크는 전송하는 주파수 블록의 각 행의 합에 2로 나누어 나머지가 1이면 주파수를 발생, 0이면 발생하지 않는다. 패리티 체크는 Y축 패리티와 X축 패리티의 발생블록의 합에 2로 나누어 나머지가 1이면 주파수를 발생 0이면 발생하지 않는다.

    16진법 주파수 블록 생성시에도 2진법 주파수 블록 생성과 마찬가지로, 수신 필터 주파수는 데이터 전송 시 유일하게 1개의 주파수를 발생시키며 데이터 전송 블록의 1부터 34까지의 주파수 발생 개수를 표현한다.

    이하 설명에서는 2진법 주파수 블록을 예로 들어 설명하겠으나, 16진법 주파수 블록도 본 발명이 마찬가지로 적용될 수 있음은 자명할 것이다.

    주파수 블록 암호화 모듈(120)은, 2진법 또는 16진법 주파수 블록이 노출되어 악의적인 목적으로 사용될 수 있는 문제가 있다. 이러한 문제를 해결하기 위하여 본 발명은 실시간으로 주파수 블록의 주파수를 변경하여 보안을 강화한다. 즉, 본 발명은 주파수 블록의 주파수 값이 수시로 변경되어 송출되도록 구현하여 발생되는 주파수가 노출되더라도 악의적인 목적으로 사용될 수 있는 문제를 해결할 수 있다.

    이를 위해 주파수 블록 암호화 모듈(120)은, 생성되는 암호화 키를 이용하여 암호화 좌측 시프트값과 암호화 우측 시프트값을 생성하여, 데이터 주파수 블록과 분리 수신 필터 주파수 블록으로 된 주파수 블록의 데이터 자리수 중에서 홀수열이나 짝수열 중 어느 하나의 열에 배치된 주파수를 상기 암호화 좌측 시프트값만큼 좌측으로 이동시켜 교체하여, 주파수 블록의 데이터 자리수 중에서 좌측으로 이동되지 않은 열에 배치된 주파수를 암호화 우측 시프트값만큼 우측으로 이동시켜 교체하여 암호화한다.

    상술하면, S/W를 통한 음파통신 발신기는 중앙서버 혹은 로컬서버의 시간을 년 + 월 + 일 + 시간 + 분의 조합으로 암호화 키를 생성한다. 독립적인 H/W 음파 발생기를 통한 발신기는 내장된 타이머의 시간을 년 + 월 + 일 + 시간 + 분의 조합으로 암호화 키를 생성한다. 음파 송신부(100)에 내장된 타이머의 시간을 조합하거나, 네트워크에 연결된 서버의 시간을 조합하여 암호화 키를 생성한다. 예컨대, 암호화키는 YYYYMMDDhhmm(201504271202)의 형태를 가질 수 있다.

    그리고 암호화 키의 홀수열이나 짝수열 중 어느 하나의 열을 합하여 암호화 좌측 시프트값으로 산출하며, 상기 암호화 키의 나머지 다른 열을 합하여 암호화 우측 시프트값을 생성한다.

    예를 들어, 도 6(a)와 같은 시간의 조합된 암호화 키가 있다고 가정할 경우, 도 6(b)와 같은 좌측 시프트값과 우측 시프트값을 생성할 수 있다. 즉, 좌측 시프트값은 기준열+홀수열의 값이며, 우측 시프트값은 기준열+짝수열의 값이 해당될 수 있다. 기준열이 암호화 키의 제일 마지막 열인 'l'열이라고 할 때, 하기의 [식 1]과 같이 좌측 시프트값과 우측 시프트값을 생성하여 도 6(b)의 값을 얻을 수 있다.

    [식 1]

    좌측 시프트값 = l + a + c + e + g + i + k

    우측 시프트값 = l + b + d + f + h + j

    상기와 같이 좌측 시프트값과 우측 시프트값이 생성되면, 도 7과 같이 주파수 블록의 자리 수 중 홀수 열은 좌측 시프트값을 사용하여 해당 값 만큼 이동하여 이동한 자리의 주파수와 교체한다, 다만, 좌측으로 이동중 1번 자리 수 뒤로 이동 시 마지막 자리수로 이동하여 루프를 돌린다.

    마찬가지로, 주파수 블록의 자리 수 중 짝수 열은, 도 8과 같이 우측 시프트값을 사용하여 해당 값 만큼 이동하여 이동한 자리의 주파수와 교체한다, 다만, 우측으로 이동중 마지막 자리 수 다음 이동 시 1자리수로 이동하여 루프를 돌린다.

    데이터 주파수 발신 모듈(130)은, 송신하려는 데이터를 2진수로 변환하여 변환된 값이 '1'을 가지는 데이터 자리수에 할당된 데이터 주파수를 설정된 기본 데시벨의 크기로 발생시키며, 변환된 값이 '1'을 가지는 데이터의 개수와 동일한 데이터 자리수에 할당된 분리 수신 필터 주파수를 기본 데시벨의 크기로 발생시키며, 하드웨어 발신 보정을 위한 보정 기준 주파수를 기본 데시벨의 크기로 발생시킨다.

    상술하면, 10진 데이터를 전송하고자 하는 경우, 주파수 블록을 암호화 한 후 전송하려는 10진 데이터를 2진수로 변환하여 1이면 해당 자리 수의 주파수를 발생시킨다. 데이터 주파수 블록에 발생되는 주파수 개수를 합하여 수신필터 주파수의 자리 수에 해당하는 주파수를 발생시킨다. 하드웨어 발신 보정을 위한 보정 기준 주파수의 보정 값 '0'에 위치한 주파수를 발생시킨다.

    예를 들어 '1234'라는 10진 데이터를 전송하고자 하는 경우, 도 9에 도시한 바와 같이 '1234'를 2진수로 변환하면 10011010010의 이진수에 해당하는 아래 주파수를 송출한다. 그리고, 데이터 주파수 블록에 발생되는 주파수의 개수가 6개이므로 분리 수신 필터 주파수 블록의 6번째 자리에 해당하는 18,350Hz를 기본 데시벨로서 송출한다. 그리고 하드웨어 발신 보정을 위한 보정 기준 주파수의 보정 값 '0'에 위치한 18,080Hz 주파수를 기본 데시벨로서 발생시킨다.

    추출된 송출 주파수를 동일한 기본 데시벨로서 정현파(사인파)를 생성하여 스피커를 통하여 발신한다. 타이머의 분이 변경될 경우 송출 주파수를 주파수 블록 암호화 모듈(120)을 통하여 재 배열한 후 다시 송출한다.

    만약, 16진 데이터를 전송하고자 하는 경우, 주파수 블록을 암호화 한 후 전송하려는 16진 데이터를 2진수로 변환하여 1이면 해당 자리 수의 주파수를 발생시킨다. 데이터 주파수 블록에 발생되는 주파수 개수를 합하여 수신필터 주파수의 자리 수에 해당하는 주파수를 발생시킨다. 하드웨어 발신 보정을 위한 기준 주파수의 보정 값 '0'에 위치한 주파수를 발생시킨다.

    예를 들어 'F00000F'라는 16진 데이터를 전송 시 각 자리 수를 2진수로 변환하면 1111, 0000, 0000, 0000, 0000, 0000, 1111의 4바이트 2진수 총 7개 생성되어 도 10에 도시한 바와 같이 데이터 주파수 블록에 할당된다. 그리고, 데이터 주파수 블록에 발생되는 주파수의 개수가 8개이므로 분리 수신 필터 주파수 블록의 8번째 자리에 해당하는 18,390Hz를 기본 데시벨로서 송출한다. 그리고 하드웨어 발신 보정을 위한 보정 기준 주파수의 보정 값 '0'에 위치한 18,080Hz 주파수를 기본 데시벨로서 발생시킨다.

    한편, 상기의 음파 송신부(100)의 구성 설명에서는 주파수 블록 암호화 모듈(120)이 적용된 예로서 데이터 주파수 생성 모듈(110)에서 생성한 주파수 블록을 주파수 블록 암호화 모듈(120)이 암호화를 수행하고, 암호화된 주파수 블록의 데이터 자리수에 할당된 주파수에 대하여 주파수 발신을 수행하는 예를 설명하였다. 그러나 본 발명은 이에 한정되지 않고 데이터 주파수 생성 모듈(110)에서 주파수 블록을 생성하여 암호화없이 직접 데이터 주파수 발신 모듈(130)을 통하여 데이터를 전송하는 실시예도 가능함은 자명할 것이다.

    도 11은 본 발명의 실시예에 따른 음파 수신부의 구성 블록도이다.

    본 발명의 음파 수신부(200)는, 동일한 음파통신 발신 소프트웨어를 통한 데이터 주파수 발신 시 스피커 또는 음향기기(H/W)의 특성에 따라 발생되고 있는 출력오차(hz)를 자동 감지하여 음파 데이터를 수신할 수 있도록 모든 H/W를 발신기로 사용할 수 있도록 한다.

    음파 송신부(100)에서 주파수 블록의 주파수를 암호화 하여 발신시에 이를 해석할 수 있는 암호화 해석을 하며, 이때 암호화 해석은 음파 송신부(100)와 동일한 주파수 배열을 실시간으로 동기화 되도록 한다. 또한 동일한 장소에서 각각 다른 신호의 데이터 주파수를 발신하고 있을 경우 가장 가까운 곳에서 발신되고 있는 음파 데이터를 수신 할 수 있도록 음파 데이터를 분리하는 모듈을 제안하여 여러개의 음파신호를 동일한 장소에서 혼선 없이 사용할 수 있도록 한다.

    이를 위해 음파 수신부(200)는, 음파 데이터 수신 모듈(210), 고속 퓨리에 변환 모듈(220), 수신 보정 모듈(230), 음파 데이터 분리 모듈(240), 및 유효성 검증 모듈(250)을 포함할 수 있다.

    음파 데이터 수신 모듈(210)은, 스마트폰 또는 태블릿 PC에 마련된 마이크에 해당하며, 이러한 마이크 리소스를 통하여 일정 시간 간격으로 10ms 내외의 음파 데이터를 수신받는다.

    고속 퓨리에 변환 모듈(220)은, 수신되는 음파 신호를 설정된 샘플링 간격으로 고속퓨리에변환(FFT)하여 데시벨을 추출하여 샘플링 주파수 배열에 배치한다. 음파 송신부(100)에서 송출한 데이터 주파수를 해석하기 위하여 FFT(고속 퓨리에 변환)공식을 적용하여 시간데이터를 주파수 데이터로 변환 하는 작업을 수행한다.

    FFT 분석은 44100 Sampling rate 를 8820개의 블록으로 5hz단위로 시간 데이터를 주파수 데이터로 변환할 수 있다. 음파 송신부(100)에서 전송하는 데이터 크기가 클 수록 블록의 수를 늘려 주파수 간격을 좁힌다. 분석된 FFT 데이터는 도 12에 도시한 바와 같이 음파통신에 해당하는 주파수 대역(18000hz ~ 19800hz)만 주파수 간격을 가지는 샘플링 주파수 배열에 순차적으로 저장해 놓는다.

    수신 보정 모듈(230)은, 보정 주파수 대역에서 가장 큰 데시벨이 검출되는 주파수를 보정 주파수로서 결정하며, 보정 주파수에 할당된 보정값만큼 상기 샘플링 주파수 배열에 배치된 데시벨을 이동시켜 수신 보정한다.

    수신 보정 모듈(230)은 발신기의 기계적(H/W) 특성에 의하여 발생되는 주파수 오차를 보정하여 기계적 특성에 제약적이지 않은 정확한 데이터를 수신할 수 있도록 개발 된 모듈이다. 고속 퓨리에 변환 모듈(220)을 통하여 분석된 배열에서 수신 보정 영역대의 주파수 배열을 검출한다. 도 13에 도시한 도표와 같이 수신 보정 영역 데이터의 데시벨 값이 가장 크게 검출된 부분을 보정 값으로 사용한다. 보정 값이 '0'인 경우는 FFT분석 원본 데이터를 별도의 보정 로직을 적용하지 않고 암호화 해석 모듈을 수행한다.

    그러나, 만약 보정값이 0이 아닌 경우 FFT 분석 원본 데이터의 데시벨 값을 보정 값 만큼 Shift 시킨 후 암호화 해석 모듈을 수행 한다. 예를 들어, 수신 보정 영역대의 주파수에서 18,085Hz가 가증 큰 데시벨을 가진다면, 18,080Hz의 보정 기준 주파수가 5Hz 이동되어 전송된 것이라 볼 수 있다. 따라서 18,085Hz에 할당된 보정값 '-1'만큼 도 14에 도시한 바와 같이 데시벨을 이동시키는 수신 보정을 한다.

    복호화 모듈은, 수신 필터를 통하여 다른 주파수는 다 블라인드 처리 후 미리 정의된 수신필터 대역의 주파수만 처리한다. 따라서 도 15에 도시한 바와 같이 미리 정의된 수신 필터 대역을 추출하여 처리할 수 있다.

    복호화 모듈은, 암호화 키를 이용하여 복호화 좌측 시프트값과 복호화 우측 시프트값을 생성하여 음파 송수신 배열의 배열 인자 중에서 홀수열이나 짝수열 중 어느 하나의 열에 배치된 주파수를 복호화 좌측 시프트값만큼 좌측으로 이동시켜 교체하며, 음파 송수신 배열의 배열 인자 중에서 좌측으로 이동되지 않은 열에 배치된 주파수를 상기 복호화 우측 시프트값만큼 우측으로 이동시켜 교체한 후, 수신 보정된 샘플링 주파수 배열 중에서 데이터 주파수와 데이터 주파수에 배치된 데시벨을 추출하며, 수신 보정된 샘플링 주파수 배열 중에서 분리 수신 필터 주파수와 분리 수신 필터 주파수에 배치된 데시벨을 추출하여 상기 음파 송수신 배열에 배치한다.

    즉, 중앙 서버 또는 로컬서버, 스마트폰의 GPS 시간을 기준으로 암호화 키를 생성해 놓는다. 암호화 키의 생성은 음파 송신부(100)의 주파수 블록 암호화 모듈(120)에서 생성한 암호화 키와 동일하며 생성된 암호화 키의 특정 열을 합하여 좌측 시프트값, 우측 시프트값으로 결정한다. 결정된 좌측 시프트값에 따라서 도 16(a)에 도시한 바와 같이 홀수열의 배열인자의 주파수들을 좌측 시프트값만큼 이동시키며, 또한 우측 시프트값에 따라서 도 16(b)에 도시한 바와 같이 홀수열의 배열인자의 주파수들을 좌측 시프트값만큼 이동시킨다. 그리고 도 17에 도시한 바와 같이 수신 보정된 샘플링 주파수 배열 중에서 분리 수신 필터 주파수와 분리 수신 필터 주파수에 배치된 데시벨을 추출하여 저장한다.

    참고로, 복호화 할 때 역시 동일한 시프트 값으로 발신부와 동일하게 이동을 해주는 것이다. 암호화 및 복호화 모두 주파수만 이동되는 것이다. 음파 송신부가, 추출된 시프트값으로 주파수를 이동한 후 해당하는 블록의 주파수를 발신하면, 음파 송신부에서 해당 키 값으로 주파수를 특정 블록으로 이동하여 주파수를 전송하였기 때문에 음파 수신부(200)의 복호화 모듈 역시 동일한 시프트값으로 주파수를 이동하여 블록에 배치한 후 수신된 주파수를 해당 블록에 마킹하여 해석하는 것이다.

    음파 데이터 분리 모듈(240)은, 도 18에 도시한 바와 같이 복호화된 음파 송수신 배열에서 분리 수신 필터 주파수에 배치된 데시벨 중에서 데시벨이 가장 큰 분리 수신 필터 주파수를 추출하여 추출한 분리 수신 필터 주파수에 할당된 음파 송수신 배열의 배열 인자의 개수만큼 데이터 주파수의 데시벨이 큰 순서대로 추출하여 데이터를 복원한다.

    기존의 음파통신은 음파의 특성상 동일한 영역에서 서로 다른 신호를 발생시 데이터를 분리할 수 있는 기준이 없어 데이터를 수신 할 수 없는 문제점이 있었으나 본 발명의 음파 데이터 분리모듈을 통하여 가장 가까운 곳에서 발신되는 신호를 수신할 수 있다.

    예를 들어, 분리 수신 필터 주파수에 배치된 데시벨 중에서 데시벨이 가장 큰 분리 수신 필터 주파수가 18,350Hz라면, 데이터 주파수의 데시벨 중에서 가장 큰 값의 데시벨을 가지는 순서대로 6개의 배열 인자를 추출할 수 있다. 따라서 도 9에 도시한 바와 같이 패리티 비트가 '00'으로서 '10001101001'(데이터)+'00'(패리티)가 되어 전체 데이터가 '100110100100'으로 송신될 경우, 분리 수신 필터 주파수는 22,25,26,28,31,34의 배열 인자를 추출하여, 수신 데이터로서 '100110100100'을 수신할 수 있다.

    참고로, 분리 수신 필터 주파수의 데시벨 값이 가장 큰 배열 인자의 인자 값이 가장 가까운 곳에서 발신된 발신기의 주파수 데이터 수신 개수의 값이다. 본 발명에서 음파 송신부(100)는 동일한 기본 데시벨로 데이터 주파수를 송출하고 있으므로 데이터 주파수의 데시벨 값이 큰 순서로 추출된 배열 인자의 값만큼 수신을 하면 가장 가까운 곳에서 발신하고 있는 데이터를 수신 할 수 있는 것이다.

    데이터 추출 기준 값: n = Max(수신필터 데시벨)의 배열인자

    데이터 추출: data[n] = Max(데이터 주파수 데시벨)의 상위 n개

    유효성 검증 모듈(250)은, 음파 데이터 분리 모듈(240)을 통하여 복원된 데이터에서 상기 패리티 비트를 이용하여 복원된 데이터의 유효성 검증을 수행한다.

    유효성 검증은 데이터 영역의 주파수 블록 1~32중 홀수 블록으로 마킹된 주파수의 합이 홀수이면 33번 블록의 주파수가 동시에 수신 되어야 한다. 만약, 홀수인데 33번 블록에 해당하는 주파수가 수신이 안되어 있으면 데이터 수신이 잘못된 것으로 인식하여 다시 수신하여 분석한다. 이러한 분석은 예컨대 총 5회 분석이 이루어질 수 있다.

    또한 동일한 검증으로 데이터 영역의 주파수 블록 1~32중 짝수열에 마킹된 주파수의 합이 홀수이면 34번 블록의 주파수가 동시에 수신되어야 한다. 만약 홀수인데 34번 블록에 해당하는 주파수가 수신이 안되어 있으면 데이터 수신이 잘못된 것으로 인식하여 다시 수신하여 분석한다. 이러한 분석은 예컨대 총 5회 분석이 이루어질 수 있다. 참고로, 유효성 검사중 오류가 발생되어 일정 횟수(예컨대, 총 5회)가 누적되면 일정 시간동안 대기후 다시 수신을 하게 된다.

    한편, 상기의 음파 수신부(200)의 구성 설명에서는 주파수 블록 암호화가 이루어진 데이터를 수신하였을 때의 복호화를 포함한 예를 설명하였다. 모듈이 적용된 예로서 데이터 주파수 생성 모듈(110)에서 생성한 주파수 블록을 주파수 블록 암호화 모듈(120)이 암호화를 수행하고, 암호화된 주파수 블록의 데이터 자리수에 할당된 주파수에 대하여 주파수 발신을 수행하는 예를 설명하였다. 그러나 본 발명은 이에 한정되지 않고 데이터 주파수 생성 모듈(110)에서 주파수 블록의 암호화없이 직접 데이터 주파수 발신 모듈(130)을 통하여 데이터를 전송한 경우 이를 수신하여 복호화없이 데이터를 복원 처리하는 경우에도 가능함은 자명할 것이다.

    도 19는 본 발명의 실시예에 따른 음파 통신 과정을 도시한 플로차트이며, 도 20은 본 발명의 실시예에 따른 음파 송신 과정을 도시한 플로차트이며, 도 21은 본 발명의 실시예에 따른 음파 수신 과정을 도시한 플로차트이다.

    본 발명의 음파 통신 과정은, 하드웨어 보정 테이블 생성 과정(S190), 음파 송신 과정(S200), 및 음파 수신 과정(S210)을 가질 수 있다.

    하드웨어 보정 테이블 생성 과정(S190)은, 음파를 송신하는 스피커의 하드웨어 특성에 따른 오차를 보정하는 보정값별로 보정 주파수가 할당된 보정 주파수 대역을 설정하여, 보정값 '0'에 보정 기준 주파수를 할당하여 하드웨어 보정 테이블을 생성하는 과정이다.

    음파 신호를 발신할 때 스피커의 하드웨어 특성에 따라서 원래 설정된 기준 주파수가 아닌 약간의 오차를 가지는 다른 주파수에 실려 음파가 발신될 수 있는데, 이러한 하드웨어 특성에 의한 오차를 보정하기 위하여 동일한 하드웨어 보정 테이블을 음파 송신부(100) 및 음파 수신부(200)에 각각 구비한다. 보정값 '0'에 할당된 보정 주파수를 보정 기준 주파수라 하기로 한다. 하드웨어 보정 테이블의 예시를 도 2에 도시하였다. 도 2를 참조하면, 보정 주파수 대역은 18,065Hz에서 18,095Hz 대역을 가지며, 보정 주파수가 5Hz 간격으로 할당되어 18,065Hz에서는 3의 보정값을 가지며, 18,070Hz에서는 2의 보정값을 가지며, 18,075Hz에서는 1의 보정값을 가지며, 18,080Hz에서는 0의 보정값을 가지며, 18,085Hz에서는 -1의 보정값을 가지며, 18,090Hz에서는 -2의 보정값을 가지며, 18,095Hz에서는 -3의 보정값을 가질 수 있음을 알 수 있다. 따라서 0의 보정값을 가지는 18,080Hz가 보정 기준 주파수에 해당된다.

    음파 송신 과정(S200)은, 데이터 주파수별로 데이터를 할당하기 위한 데이터 주파수 블록을 생성하며, 음파 수신 시에 가장 가까운 곳에서 송신된 음파에 실린 데이터를 수신하기 위한 분리 수신 필터 주파수 블록을 생성하는 과정이다.

    음파 송신 과정(S200)을 도 20과 함께 상술하면, 주파수 블록 생성 과정(S202), 암호화 과정(S204), 및 주파수 발신 과정(S206)을 가질 수 있다.

    주파수 블록 생성 과정(S202)은, 2진수 송신 데이터의 개수와 패리티 비트의 개수를 더한 데이터 자리수를 배열 인자로 가지는 음파 송수신 배열을 생성하여,데이터 자리수에 동일한 간격을 가지는 각각 다른 데이터 주파수를 할당한 데이터 주파수 블록을 생성하며, 데이터 자리수마다 각각 다른 분리 수신 필터 주파수를 할당한 분리 수신 필터 주파수 블록을 생성하는 주파수 블록 생성 과정(S202)을 가진다. 예를 들어, 도 4에 도시한 바와 같이 2진수 송신 데이터의 개수 32개와 패리티 비트의 개수 2개를 더한 34개의 데이터 자리수의 배열 인자를 가지는 음파 송수신 배열을 생성하고, 각 데이터 자리수마다 데이터 주파수와 분리 수신 필터 주파수를 각각 할당한다.

    암호화키를 생성하고 상기 암호화 키를 이용하여 암호화 좌측 시프트값과 암호화 우측 시프트값을 생성하여, 상기 데이터 주파수 블록과 분리 수신 필터 주파수 블록으로 된 주파수 블록의 데이터 자리수 중에서 홀수열에 배치된 주파수를 상기 암호화 좌측 시프트값만큼 좌측으로 이동시켜 교체하여, 주파수 블록의 데이터 자리수 중에서 짝수열에 배치된 주파수를 암호화 우측 시프트값만큼 우측으로 이동시켜 교체하여 암호화하는 과정을 가진다. 즉, 중앙서버 혹은 로컬서버의 시간을 년 + 월 + 일 + 시간 + 분의 조합으로 암호화 키를 생성한다. 독립적인 H/W 음파 발생기를 통한 발신기는 내장된 타이머의 시간을 년 + 월 + 일 + 시간 + 분의 조합으로 암호화 키를 생성한다. 음파 송신부(100)에 내장된 타이머의 시간을 조합하거나, 네트워크에 연결된 서버의 시간을 조합하여 암호화 키를 생성한다. 예컨대, 암호화키는 YYYYMMDDhhmm(201504271202)의 형태를 가질 수 있다.

    그리고 암호화 키의 홀수열이나 짝수열 중 어느 하나의 열을 합하여 암호화 좌측 시프트값으로 산출하며,암호화 키의 나머지 다른 열을 합하여 암호화 우측 시프트값을 생성한다.

    상기와 같이 좌측 시프트값과 우측 시프트값이 생성되면, 도 7과 같이 주파수 블록의 자리 수 중 홀수 열은 좌측 시프트값을 사용하여 해당 값 만큼 이동하여 이동한 자리의 주파수와 교체한다, 다만, 좌측으로 이동중 1번 자리 수 뒤로 이동 시 마지막 자리수로 이동하여 루프를 돌린다. 마찬가지로, 주파수 블록의 자리 수 중 짝수 열은, 도 8과 같이 우측 시프트값을 사용하여 해당 값 만큼 이동하여 이동한 자리의 주파수와 교체한다, 다만, 우측으로 이동중 마지막 자리 수 다음 이동 시 1자리수로 이동하여 루프를 돌린다.

    암호화 과정(S204)이 있은 후, 송신하려는 데이터를 2진수로 변환하여 변환된 값이 '1'을 가지는 데이터 자리수에 할당된 데이터 주파수를 설정된 기본 데시벨의 크기로 발생시키며, 변환된 값이 '1'을 가지는 데이터의 개수와 동일한 데이터 자리수에 할당된 분리 수신 필터 주파수를 기본 데시벨의 크기로 발생시키며, 하드웨어 발신 보정을 위한 보정 기준 주파수를 기본 데시벨의 크기로 발생시키는 주파수 발신 과정(S206)을 가진다.

    즉, 10진 데이터를 2진수로 변환하여 주파수에 실어 발생시키는 도 9 및 16진 데이터를 2진수로 변환하여 주파수에 실어 발생시키는 도 10에 도시한 바와 같이, '1'의 값을 가지는 데이터 자리수에 할당된 데이터 주파수에 기본 데시벨의 크기로서 전송하고, 분리 수신 필터 주파수 및 보정 기준 주파수에 기본 데시벨의 크기로서 전송한다.

    한편, 상기의 음파 송신 과정(S200)의 설명에서는 주파수 블록 암호화가 적용된 예로서 주파수 블록을 주파수 블록 암호화를 수행하고, 암호화된 주파수 블록의 데이터 자리수에 할당된 주파수에 대하여 주파수 발신을 수행하는 예를 설명하였다. 그러나 본 발명은 이에 한정되지 않고 주파수 블록을 생성하여 암호화없이 직접 데이터 주파수 발신을 통하여 데이터를 전송할 수 있을 것이다.

    한편, 상기와 같이 음파 송신이 있은 후에는, 상대편에서 음파 수신 과정(S210)을 가진다. 음파 수신 과정(S210)은, 음파 송신부(100)에서 송신한 음파 신호를 수신하여 상기 데이터 주파수별로 데시벨을 추출하여 배열시킨 후, 하드웨어 보정 테이블을 이용하여 추출한 보정값만큼 배열을 시프트시켜 보정을 하고, 분리 수신 필터 주파수의 대역 중에서 데시벨이 가장 큰 분리 수신 필터 주파수에 할당된 배열 인자의 개수만큼 상기 데이터 주파수의 데시벨이 큰 순서대로 추출하여 데이터를 복원하는 과정이다.

    음파 수신 과정(S210)을 도 21과 함께 상술하면, 고속 퓨리에 변환 과정(S212), 수신 보정 과정(S214), 복호화 과정(S216), 및 음파 데이터 분리 과정(S218)을 가질 수 있다. 이밖에 유효성 검증 과정(S219)을 가질 수 있다.

    고속 퓨리에 변환 과정(S212)은, 수신되는 음파 신호를 설정된 샘플링 간격으로 고속퓨리에변환(FFT)하여 데시벨을 추출하여 샘플링 주파수 배열에 배치하는 과정이다.

    FFT 분석은 44100 Sampling rate 를 8820개의 블록으로 5hz단위로 시간 데이터를 주파수 데이터로 변환할 수 있다. 음파 송신부(100)에서 전송하는 데이터 크기가 클 수록 블록의 수를 늘려 주파수 간격을 좁힌다. 분석된 FFT 데이터는 도 12에 도시한 바와 같이 음파통신에 해당하는 주파수 대역(18000hz ~ 19800hz)만 주파수 간격을 가지는 샘플링 주파수 배열에 순차적으로 저장해 놓는다.

    수신 보정 과정(S214)은, 보정 주파수 대역에서 가장 큰 데시벨이 검출되는 주파수를 보정 주파수로서 결정하며, 보정 주파수에 할당된 보정값만큼 샘플링 주파수 배열에 배치된 데시벨을 이동시켜 수신 보정한다. 도 13에 도시한 표와 같이 수신 보정 영역 데이터의 데시벨 값이 가장 크게 검출된 부분을 보정 값으로 사용한다. 보정 값이 '0'인 경우는 FFT분석 원본 데이터를 별도의 보정 로직을 적용하지 않고 암호화 해석 모듈을 수행한다. 그러나, 만약 보정값이 0이 아닌 경우 FFT 분석 원본 데이터의 데시벨 값을 보정 값 만큼 Shift 시킨 후 암호화 해석 모듈을 수행 한다. 예를 들어, 수신 보정 영역대의 주파수에서 18,085Hz가 가증 큰 데시벨을 가진다면, 18,080Hz의 보정 기준 주파수가 5Hz 이동되어 전송된 것이라 볼 수 있다. 따라서 18,085Hz에 할당된 보정값 '-1'만큼 도 14에 도시한 바와 같이 데시벨을 이동시키는 수신 보정을 한다.

    복호화 과정(S216)은, 암호화 키를 이용하여 복호화 좌측 시프트값과 복호화 우측 시프트값을 생성하여 음파 송수신 배열의 배열 인자 중에서 홀수열에 배치된 주파수를 상기 복호화 좌측 시프트값만큼 좌측으로 이동시켜 교체하며, 음파 송수신 배열의 배열 인자 중에서 짝수열에 배치된 주파수를 복호화 우측 시프트값만큼 우측으로 이동시켜 교체한 후, 수신 보정된 샘플링 주파수 배열 중에서 상기 데이터 주파수와 상기 데이터 주파수에 배치된 데시벨을 추출하며, 상기 수신 보정된 샘플링 주파수 배열 중에서 분리 수신 필터 주파수와 상기 분리 수신 필터 주파수에 배치된 데시벨을 추출하여 음파 송수신 배열에 배치한다.

    복호화 과정(S216)은, 암호화 키의 생성은 음파 송신부(100)의 주파수 블록 암호화 모듈(120)에서 생성한 암호화 키와 동일하며 생성된 암호화 키의 특정 열을 합하여 좌측 시프트값, 우측 시프트값으로 결정한다. 결정된 좌측 시프트값에 따라서 도 16(a)에 도시한 바와 같이 홀수열의 배열인자의 주파수들을 좌측 시프트값만큼 이동시키며, 또한 우측 시프트값에 따라서 도 16(b)에 도시한 바와 같이 홀수열의 배열인자의 주파수들을 좌측 시프트값만큼 이동시킨다. 그리고 도 17에 도시한 바와 같이 수신 보정된 샘플링 주파수 배열 중에서 분리 수신 필터 주파수와 분리 수신 필터 주파수에 배치된 데시벨을 추출하여 저장한다.

    음파 데이터 분리 과정(S218)은, 복호화된 음파 송수신 배열에서 분리 수신 필터 주파수에 배치된 데시벨 중에서 데시벨이 가장 큰 분리 수신 필터 주파수를 추출하여 추출한 분리 수신 필터 주파수에 할당된 상기 음파 송수신 배열의 배열 인자의 개수만큼 데이터 주파수의 데시벨이 큰 순서대로 배열 인자를 추출하여 데이터를 복원한다. 예를 들어, 도 18에 도시한 바와 같이 복호화된 음파 송수신 배열에서 분리 수신 필터 주파수에 배치된 데시벨 중에서 데시벨이 가장 큰 분리 수신 필터 주파수를 추출하여 추출한 분리 수신 필터 주파수에 할당된 음파 송수신 배열의 배열 인자의 개수만큼 데이터 주파수의 데시벨이 큰 순서대로 추출하여 데이터를 복원한다. 기존의 음파통신은 음파의 특성상 동일한 영역에서 서로 다른 신호를 발생시 데이터를 분리할 수 있는 기준이 없어 데이터를 수신 할 수 없는 문제점이 있었으나 본 발명의 음파 데이터 분리모듈을 통하여 가장 가까운 곳에서 발신되는 신호를 수신할 수 있다.

    음파 데이터 분리되어 복원된 수신 데이터는 추가적으로 유효성 검증 과정(S219)을 가질 수 있다. 유효성 검증 과정(S219)은, 음파 데이터 분리 모듈(240)을 통하여 복원된 데이터에서 상기 패리티 비트를 이용하여 복원된 데이터의 유효성 검증을 수행한다.

    유효성 검증은 데이터 영역의 주파수 블록 1~32중 홀수 블록으로 마킹된 주파수의 합이 홀수이면 33번 블록의 주파수가 동시에 수신 되어야 한다. 만약, 홀수인데 33번 블록에 해당하는 주파수가 수신이 안되어 있으면 데이터 수신이 잘못된 것으로 인식하여 다시 수신하여 분석한다. 또한 동일한 검증으로 데이터 영역의 주파수 블록 1~32중 짝수열에 마킹된 주파수의 합이 홀수이면 34번 블록의 주파수가 동시에 수신되어야 한다. 만약 홀수인데 34번 블록에 해당하는 주파수가 수신이 안되어 있으면 데이터 수신이 잘못된 것으로 인식하여 다시 수신하여 분석한다. 이러한 분석은 예컨대 총 5회 분석이 이루어질 수 있다.

    상술한 본 발명의 설명에서의 실시예는 여러가지 실시가능한 예중에서 당업자의 이해를 돕기 위하여 가장 바람직한 예를 선정하여 제시한 것으로, 이 발명의 기술적 사상이 반드시 이 실시예만 의해서 한정되거나 제한되는 것은 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위내에서 다양한 변화와 변경 및 균등한 타의 실시예가 가능한 것이다.

    100:음파 송신부
    110:데이터 주파수 생성 모듈
    120:주파수 블록 암호화 모듈
    130:데이터 주파수 발신 모듈
    200:음파 수신부
    210:음파 데이터 수신 모듈
    220:고속 퓨리에 변환 모듈
    230:수신 보정 모듈
    240:음파 데이터 분리 모듈
    250:유효성 검증 모듈

    QQ群二维码
    意见反馈