이제는 소프트웨어 차례

하드웨어 제작비용이 30% 오버 되었다. 완성도를 높여 달라는 주문에 시제품 업체에서 무리를 했나보다. 이미 시금형 제작비만해도 많이 오버되겠다 싶었다. 훗날 제품을 생산하는데 있어서 플라스틱 금형비용이 머리를 아프게 하리라 생각든다. 20% 가량을 추가로 입금해주었다. 이미 본계약금 전체가 다 넘어간 다음에 벌어진 일이었다. 혹자들은 이 업체에서 돈을 더 받기위한 연출 아닌가 생각 할 수도 있지만, 그들은 진실했다. 며칠전 문자로 얼마를 더 넣어줘야 하냐고 물으니 답이없다. 그래서 전화 통화를 해보니, 그냥 됐다고 하더라. 그래도 뻔히 들어가는 비용이 눈에 보이는데, 기왕이면 기분 좋게 일을 끝내고 싶었다. 최종 시제품이 8월 말에서 9월 초로 잡혀 있고, 그때 나머지 추가 잔금 10%를 넣어주기로 했다.

아내가… 왜 돈을 더 못줘서 안달이냐고 물었고, 그들의 경험 부족에서 오는 잘못된 견적을 그대로 이행하라고 강요하기에는 내가 그리 모진 사람은 아니지 싶다 말했다. 결론적으로 금액을 밝힐수 없지만, 그럼에도 불구하고 이들이 내게 제시한 금액은 놀랄만큼 저렴했고, 설사 30%가 오버된 지금에서라도 어디에 내놓아도 저렴하게 잘 했다는 평을 들을만 했다. 행여 그들이 상장회사나, 중견기업정도만 되었어도 계약이행을 요구했을 것이다.

이제는 눈을 돌려 소프트웨어이다. 독학으로 알약 카운팅 하는 알고리즘을 찾아 해맸다. 유튜브는 위대하지만, 친절하진 않았다. 나는 그랬다. 누군가에게 어떤 업무를 부탁하거나, 혹은 아웃소싱을 할 경우에도 최선을 다해서 그 분야에 대해서 파고든다. 사실 내 자신이 결과를 낼 수 있다면 아웃소싱이 의미 없다. 하지만 아웃소싱을 한다고 해서, 구상하고 있는 기능이 어떤식으로 흘러가는지에 대한 스스로의 확답이 없으면, 아웃소싱 업체와 직간접적으로라도 오해가 생길것이라 생각했다.

독학으로 배우고 있는 알세기 ImageJ를 이용했다.

기술자들과 협업하다.

폰카메라로 찍은 알약을 보내주었고, 3분이 안되서 이와 같이 결과물을 보내왔다.

알세기가 다들 쉬운 작업이라고 생각할것이다. 같은 크기의 형태대로 그냥 읽어내면 되지 않을까 말이다. 위에서 보여준 예시대로(빨간 점들은 아직 수학적 공식화를 만들어 놓지 않은 러프한 결과인지라, 작은 먼지들까지도 카운팅 대상이었다.) 알약들이 서로 막 붙어 있기도하고, 일부는 누워있기도 하다. 또 알약의 모양이 보여준 예시처럼 8자 형태로 만들어진 약도 있다. 이정도가 보통 카운팅할때 판에 올려 놓는 일반적 패턴이다. 전투적인 약국 환경에서 가지런히 줄 맞춰놓고 카운팅한다면, 이 제품의 존재 이유가 없어진다.

우리 기술자들에게는 반투명한 연질 캡슐까지도 구별해내는 알고리즘이 있다 하였다. 이들은 시제품이 완성되면 시제품위에 자신들의 두뇌를 얹을 예정이다.

라벨프린터와 연동을

사실 라벨프린터는 생각도 하지않았다. 그런데 클리앙회원이신 약사님께서 라벨프린터 연결이 당연히 되겠죠라고 언질하셨는데, 사실 생각 자체를 못했다. 그래서 급 검색을 시작했다. 약국에서는 계수조재시 지퍼백과 공병을 이용하는데, 생각해보니 약사가 그 공병에 싸인펜으로 약이름을 써서 주는 것 같았다. 약국에서 사용하는 라벨프린터가 있는데, 30*40 사이즈로 주로 아기들 시럽에 붙이는 라벨 출력용으로만 활용했던것 같다.

모터쇼에 출품하는 심정이었을까, 엡손의 칼라 라벨프린터가 눈에 들어왔다. 문제는 이 제품을 받는다하여도, 잉크 가격이 너무 비싸서 일선 약국에 도입하기가 어려울거라 생각했는데, 리필 잉크를 쓸 수 있다. 잉크통에 달려 있는 칩을 임의적으로 리셋해주는 제품이 있었고, 리세터의 가격은 대략 30만원 정도 하는데, 영국의 한 업체에서 5만원 정도에 판매를 하여, 고민없이 주문을 했다. 여담으로 해당 업체 사장이 작년 1달동안 한국에서 여행을 했는데 좋은 기억을 갖고 있다며, 원래 해외 배송이 아시아까지는 아닌데, 해주겠노라고… 친절했던 한국인을 잊지 못하겠노라고, 자신이 묶었던 호텔 이름까지 열거하며 추억을 떠올렸다. 요즘같은 시기에 일본 기업이 왠말이냐고 하겠지만, 대안이 없었다. 브라더 역시 일본 기업이고… 제품가격이 190만원 정도로 높은 편이지만, 기왕사 만드는거 끝판왕 한번 해보고 싶었다.

계산상 라벨한번 프린팅하는데 출력 비용이 25원 정도로 떨어진다. 충분히 약국에서 도입해볼만하다. 두번째 이 라벨프린터를 우리가 개발하고 있는 소프트웨어에 붙여야 한다. 이를 위해서 SDK 킷이 필요하다는 것이다. 엡손에 연락하여 문의하자, 무뚝뚝하게 그런거 없다고 말한다. 그래서 해외 사이트에는 명시되어 있고, 각 나라 담당자에게 문의하라고 나오는데 없다고 한다. 오후쯤에 다시 전화를 걸어 다른 담당자와 통화를 해보니, 한 5분쯤 확인후에 연락처 두곳을 알려주었고, 이중 한곳에서 라벨프린터용 개발자 킷을 입수 할 수 있었다.

알약의 입고

약국의 전산 프로그램(청구 소프트웨어)에는 전산 재고 기능이 있다. 유료 서비스를 이용하면 거래도매상에서 주문한 내용이 자동으로 프로그램안에 자동 입고 처리가 된다.

알약 계수기를 단순히 알약만 세는데 사용하지 않을것이라는것이 나의 숨은 계획이었다. 하루 수차례 약도매상으로부터 약품을 배송 받는다. 또 이 내용을 보면 약사들이 약국 정보 공개했다고 신나게 물고 뜯겠지만, 도매상이나, 제약사로부터 받는 약품들이 한달 평균 1억원 정도이다. 대부분 건보 대상 약품들이라서 매출과 수익이 비례하지 않는다. 간략화시켜 쉽게 말하면 조제용 약품은 100원에 약국에 들어오면 100원에 나가는 구조이다. 비급여쪽은 다르다고 하나, 이 내용은 여기서 마무리하기로 한다. 한달에 1억의 약품이 약국에 들어올때 주문 내역 그대로 들어올까? 대체로 그렇지만 때에따라 누락되거나 더 들어오는 경우도 있다. 이렇기 때문에 약국에서는 직원이나 약사가 인보이스와 대조하는 작업을 하게 된다.

난제는 약자판기

우리는 대부분 약을 약자판기를 통해서 받는다. 이러한 편리함 뒤에는 말못할 불편함이 따른다. 앞서 언급한 전산 프로그램의 자동 입고기능에 약품의 유통기한이나 로또 번호 등이 함께 정보로 입력되지만, 이러한 정보가 큰 의미가없다. 예를 들어 a라는 약품 10통이 들어왔는데, 한통당 30정씩 들어 있다고 치면, 전산재고에서는 a약품 300정으로 등록된다. 각통마다 관리되지 않는 이유는 우리나라의 약자판기 개념 자체가 소분 조제의 형식이기 때문이다. 행여 어떤 환자가 처방전을 들고 약국에 와서 처방전을 입력시키는데 a약품을 40정 처방받았다면 전산재고는 260정으로 조정된다. 이렇게 뭉쳐져서 통계 내어지는 구조의 큰 단점은 유통기한등을 파악하기 힘들다는 것이다. 가령 B라는 약품이 전산재고로 60정 잡혀 있는데, 한 2년간 한번도 처방이 안나왔다고 치면, 그 약품을 전수조사하지 않는 이상 그 약품의 유통기한이 얼마나 남았는지를 파악할 수 없게 된다. 또 이렇게 뭉쳐서 통계를 내는 청구프로그램들의 문제점은 출고 기능이 없다. 사용한 약품의 총량의 변화만 있을뿐이지, 그 외적인 정보는 계속 누적되어만간다. (입고는 잡히는데, 출고로 해당 로또번호의 약품 반출기록은 없다. )쉽게 말하면 현재의 시스템으로는 재고로 쌓여 있는 약품들의 유통기한을 파악할 길이 없다는 것…

알약 계수기의 출고와 폐기

계수기에 붙어 있는 2d 바코드 리더기를 이용하여, 인벤토리 기능을 강화하려고 한다. 이 인벤토리가 기존의 약국 소프트웨어와 연동 시킬지는 모르겠지만, 독자적으로 운영을 해도 큰 무리가 없을것 같다. 예를 들어 입고할 제품들을 리딩하면 각종 정보와 유통기한까지 다 입력되고, 어느 약장에 위치해야하는지까지 안내하게끔 할 생각이다. 또 출고의 경우 크게 완전히 사용하여 더이상 존재하지 않을때의 폐기기능을 사용하여, 폐기 기능을 활성화하고 이에 폐기 대상 약품통을 스캔 리딩해서, 입고 기록을 삭제하게끔 하면 될것으로 보인다. 조금은 손이 많이 가는것 같이 보이지만, 이렇게 정리해놓고, 유통기한이 6개월 미만인 약품들을 자동으로 정렬하여, 매번 손으로 유통기한 조사를 하는 어려움에서 해방시키려 한다. for my 마눌

계수 조제에 대해서

대부분의 약업 소프트웨어들은 DB를 My SQL을 이용한다고 한다. 이 데이터를 개발중인 제품에 연결시키면 의외로 다양한 일을 할 수 있다. C라는 환자가 처방전을 받아왔다. D와 E의 알약을 한달치 포장하고, F라는 약을 20정 소분해서 계수조제해야할경우, 본 제품에서 C환자의 목록에서 F라는 약을 선택하고 계수조제를 누르면 해당 약품을 바코드 리딩해서 맞는지 확인후 계수후 완료를 누르면 해당 환자 C님, F 20정으로 라벨 프린팅 되고 계수된 약을 병에 담고, 라벨을 뜯어 붙어주면 된다. 또 G라는 환자의 처방약중 H 약품의 위치를 모를 경우 본 제품에서 G환자목록에서 H약품을 선택하면 기본적인 약품 사진과, 병이나 통 사진 그리고 위치 정보가 함께 제공되게 하여, 약국 업무에 능숙하지 않은 신입이 올지라도 쉽게 약품을 찾을수 있게 된다. 문제라면, 해당 약업 소프트웨어 업체들은 이러한 데이터 활용을 위한 API를 제공하지 않는다.

향후 일정에 관해서

  1. 계획단계서부터 해당 기술 기능들에 대하여 변리사를 통해 특허 작업을 하였다. 미국제품과는 완전히 다르다.
  2. 시제품이 완성되면, 약국에서 한달 이상 실전 테스트를 할것이다.
  3. 일부 업체들은 완성되면 보러 오겠다고 한다.
  4. 이 제품을 단순히 알세기가 아닌, 조제실 허브 엔진으로 활용할 다양한 시도를 해볼 생각이다.