2026년 1월 27일 화요일

Modbus Monitor & Simulator 동기화 업데이트: 완벽한 화면 일치와 정밀한 레이아웃 복원

안녕하세요! Rockdiesel3 입니다.

지난번 실시간 그래프 기능 업데이트에 이어, 오늘은 사용자의 업무 효율과 경험(UX)을 극대화하기 위해 진행된 Modbus Monitor & Simulator 동기화 업데이트 소식을 전해드립니다.

이제 모니터링 환경과 시뮬레이션 환경이 마치 거울을 보듯 완벽하게 일치합니다. 더 이상 두 프로그램 간의 화면 구성 차이로 인해 혼란을 겪거나, 매번 창 위치를 다시 정리할 필요가 없습니다.

1. 완벽한 화면 동기화 (Pixel-Perfect Synchronization)

모니터(Monitor)와 시뮬레이터(Simulator) 간의 이질감을 완전히 제거했습니다.

  • 동일한 그리드 레이아웃: 두 프로그램 모두 동일한 스마트 그리드 알고리즘을 탑재했습니다. 창을 추가하거나 자동 정렬(Auto Sort)을 실행하면, 데이터 종류와 주소 순서대로 왼쪽 상단부터 차곡차곡, 빈틈없이 정리됩니다.
  • 스마트 윈도우 사이징: 데이터의 양(Row 개수)에 따라 창의 높이가 자동으로 조절되며, 두 프로그램이 동일한 폭과 높이 규칙을 공유합니다. 이제 같은 설정 파일을 불러오면 시각적으로도 100% 동일한 화면을 볼 수 있습니다.

2. 사용자 레이아웃 저장 및 복원 (Exact Geometry Restore)

창 위치 저장 기능이 강력해졌습니다. 단순한 데이터 설정 저장을 넘어, 사용자가 공들여 배치한 화면 구성 그 자체를 기억합니다.

  • 좌표 기반 정밀 복원: 작업 공간(Workspace)을 저장할 때, 각 데이터 창의 **정확한 위치(X, Y)와 크기(W, H)**가 함께 기록됩니다.
  • 그대로 불러오기: 저장된 파일을 불러오면 자동 정렬을 건너뛰고, 저장 시점의 배치 그대로 복원됩니다. 복잡한 모니터링 환경을 한 번만 세팅해두면, 언제든 완벽한 상태로 업무를 시작할 수 있습니다.

3. 편의 기능 및 UI 개선

  • Auto Sort (자동 정렬) 버튼: 창들이 뒤죽박죽 섞여 있어도 버튼 한 번이면 깔끔한 그리드 형태로 즉시 정리됩니다. (모니터/시뮬레이터 모두 적용) 이 부분은 구현이 미흡합니다 추가 수정 예정입니다.
  • 넓어진 시야: 시뮬레이터의 기본 화면 크기를 확장하여 다수의 데이터 창을 한눈에 볼 수 있도록 시인성을 개선했습니다.
  • 불필요한 여백 제거: 화면 공간 낭비를 줄이기 위해 레이아웃의 불필요한 마진을 제거하여, 더 많은 데이터를 한 화면에 담았습니다.

주요 개선 사항 요약

기능 구분주요 업데이트 내용
SyncMonitor-Simulator 간 레이아웃 알고리즘 및 창 크기 계산 로직 통일
Save/Load창의 좌표 및 크기(Geometry) 정보 포함 저장, 1:1 정밀 복원 지원
UI/UX'Auto Sort' 버튼 추가, 불필요한 공백 제거, 에러 방지(Safe Loading)

맺음말

이번 업데이트로 "What You See Is What You Get (보는 것이 곧 얻는 것)" 환경을 구축했습니다. 현장에서 모니터링하던 배치 그대로 사무실에서 시뮬레이션을 돌려보며, 더욱 직관적이고 효율적인 분석 업무를 수행해 보시길 바랍니다.

감사합니다!


이 글은 antigravity를 이용해 작성 되었습니다.

2026년 1월 19일 월요일

Python으로 퇴근 시간 앞당기기: MS Office 문서 자동화 프로젝트 회고

 안녕하세요! 오늘은 Python을 활용해 반복적인 문서 작업에서 해방되는 과정을 기록한 프로젝트 회고를 공유합니다. Word, Excel, PowerPoint 문서를 코드로 생성하고 제어하는 환경을 구축하고 직접 테스트해본 과정을 담았습니다.

🚀 프로젝트 목표

  • MS Office 문서(Word, Excel, PowerPoint) 자동화: Python 스크립트로 문서를 생성, 수정, 읽기.
  • 개발 환경 최적화: 여러 프로젝트에 흩어진 가상환경을 하나로 통합하여 디스크 효율성 및 관리 편의성 증대.

🛠️ 1. 개발 환경 최적화 (가상환경 통합)

가장 먼저 진행한 작업은 프로젝트 폴더마다 산재해 있던 venv 폴더들을 정리하는 것이었습니다.

  • 문제점: 프로젝트마다 수백 MB를 차지하는 가상환경이 중복되어 디스크 공간 낭비 및 관리의 어려움.
  • 해결책: 프로젝트 루트에 .venv_shared라는 통합 가상환경을 생성.
  • 결과:
    • 기존 4개의 개별 가상환경 삭제.
    • VS Code 설정(.vscode/settings.json)을 업데이트하여 모든 하위 프로젝트가 이 통합 환경을 바라보도록 설정.
    • python-docxopenpyxlpython-pptx 등 필요한 라이브러리를 한 곳에 설치하여 효율적인 의존성 관리 가능.

📄 2. Word 문서 자동화 (python-docx)

가상환경 세팅 후, 첫 번째 타자는 Word였습니다.

주요 기능 구현

  • 문서 생성: 제목, 문단, 불렛 포인트 목록 추가.
  • 스타일링: 텍스트 굵게이탤릭 처리.
  • 표(Table) 생성: 데이터를 표 형식으로 정리하여 삽입.
  • 데이터 검증: 생성된 파일을 다시 파이썬으로 읽어들여 내용이 정확한지 확인.

성과: 보고서 양식을 코드로 정의해두면, 데이터만 바뀐 새로운 보고서를 1초 만에 뽑아낼 수 있습니다.


📊 3. Excel 문서 자동화 및 시각화 (openpyxl)

다음은 직장인의 영원한 친구 Excel입니다. 단순 데이터 입력뿐만 아니라 차트까지 그렸습니다.

주요 기능 구현

  • 데이터 시트 작성: 헤더에 배경색과 폰트 스타일 적용.
  • 수식(Formula) 적용=SUM() 함수를 셀에 입력하여 자동 계산 기능 구현.
  • 차트 추가: 작업 비중을 시각적으로 보여주는 파이 차트(Pie Chart) 자동 생성.

성과: 복잡한 엑셀 서식과 차트 그리기 작업을 파이썬 스크립트 실행 한 번으로 끝낼 수 있었습니다.


🖥️ 4. PowerPoint 슬라이드 자동화 (python-pptx)

마지막으로 프레젠테이션을 위한 PowerPoint 자동화입니다.

주요 기능 구현

  • 슬라이드 추가: 타이틀 슬라이드, 목록형 슬라이드 등 레이아웃 활용.
  • 콘텐츠 삽입: 불렛 포인트 텍스트 및 커스텀 텍스트 박스 배치.

성과: 주간 보고나 월간 실적 보고 같은 반복적인 PPT 작성 시간을 획기적으로 줄일 수 있는 가능성을 확인했습니다.


📋 5. 보너스: 지원 가능한 문서 포맷 리스트업

테스트를 마친 후, 파이썬으로 제어 가능한 문서 형식들을 정리하여 엑셀 파일로 만들었습니다.

  • Office: docx, xlsx, pptx
  • Cloud: Google Docs, Sheets, Slides (API 활용)
  • Other: PDF, HTML, JSON, CSV 등

특히 Google Docs와 같은 클라우드 문서는 파일이 아닌 Google Cloud API와 인증 키(Credentials)를 통해 실시간으로 제어할 수 있음을 확인했습니다. (비용은 개인 사용 시 무료 티어 내에서 충분히 가능!)


🏁 마무리

이번 프로젝트를 통해 "문서 작업도 코딩처럼" 관리할 수 있다는 것을 확인했습니다. 단순 반복 업무는 파이썬에게 맡기고, 우리는 더 창의적이고 중요한 일에 집중할 수 있게 되었습니다.

다음 목표: 실제 업무 데이터를 연동하여 매일 아침 자동으로 일일 업무 보고서를 생성하는 봇 만들기!


프로젝트 폴더 압축파일

Tags: #파이썬 #업무자동화 #문서자동화 #Python #Automation #MSOffice #Word #Excel #PowerPoint #가상환경 #개발회고


* 본 게시물은 Antigravity 를 활용해 제작 되었습니다.

2026년 1월 10일 토요일

6살 딸아이를 위해 직접 만든 '쑥쑥 한글 퀴즈' 개발기 🍎🦁


안녕하세요! 오늘은 6살 된 딸아이의 한글 공부를 위해 직접 개발한 '쑥쑥 한글 퀴즈' 프로젝트를 소개하려고 합니다. 시중에 많은 학습 앱이 있지만, 우리 아이의 수준에 딱 맞고 부모가 직접 콘텐츠를 관리할 수 있는 도구를 만들어주고 싶어 시작하게 되었습니다.

1. 왜 시작했나요? (Motivation)

아이가 한글에 관심을 가지기 시작하면서 단어 카드를 활용해 공부하곤 했습니다. 하지만 금방 지루해하는 모습을 보고, "아이들이 좋아하는 게임 요소와 보상을 결합하면 어떨까?" 하는 생각이 들었습니다.

단순한 암기가 아닌, 시각(이모지), 청각(TTS), 촉각(글씨 쓰기)을 모두 활용하는 인터랙티브한 환경을 목표로 했습니다.

2. '쑥쑥 한글 퀴즈'의 주요 기능

이 게임은 단순한 퀴즈를 넘어 아이의 성장 단계에 맞춘 다양한 기능을 포함하고 있습니다.

  • 다양한 학습 모드:

    • 알쏭달쏭 퀴즈: 그림을 보고 단어를 맞히는 기초 모드

    • ✏️ 글자 쓰기: 캔버스 API를 활용해 직접 글씨를 써보는 연습(이 부분은 일부 오류가 존재 합니다.)

    • 🎤 따라 말하기: 음성 인식을 통해 단어를 정확히 발음해보는 훈련

  • 강력한 보상 시스템 (Gamification):

    • 문제를 맞힐 때마다 칭찬 스티커를 획득하고, 스티커함에 수집할 수 있습니다.

    • 스티커 10개를 모으면 부모님이 미리 설정한 '현실 보상 쿠폰(예: 아이스크림)'이 나타나 동기부여를 극대화합니다.

  • 펫 성장 시스템:

    • 학습 성취도에 따라 펫 캐릭터가 알에서부터 영웅까지 진화합니다.

  • 부모님 전용 메뉴:

    • 우리 가족만의 퀴즈 만들기 (가족 사진 활용 가능)

    • 학습 리포트 확인 및 난이도 조절

3. 개발 기술 포인트 (Technical Highlights)

이번 프로젝트는 Google Antigravity 환경에서 웹 표준 기술(HTML, CSS, JS)을 활용해 제작되었습니다. 특히 유지보수를 위해 몇 가지 원칙을 지켰습니다.

🛠 모듈화된 데이터 관리 (word_data.js)

누리과정 기반의 300개 단어를 수준별(Level 1~3)로 분류하여 관리합니다. 아이의 실력이 늘어감에 따라 자동으로 난이도가 조절되도록 설계했습니다.

🎨 인터랙티브 UI/UX (style.css)

아이들의 눈높이에 맞춰 파스텔 톤의 테마를 적용했습니다. 특히 중력 효과를 활용해 단어 이모지가 아래로 떨어지는 애니메이션은 아이의 집중력을 높여주는 핵심 요소입니다.

🧠 스마트한 학습 로직 (script.js)

  • TTS (Text-to-Speech): Web Speech API를 사용하여 모든 안내를 음성으로 제공합니다.

  • 오답 우선 노출: 아이가 틀린 단어는 LocalStorage에 저장되어 복습 모드에서 더 자주 등장하도록 구현했습니다.

마무리하며

직접 코딩을 통해 아이에게 필요한 선물을 줄 수 있다는 것은 개발자로서 큰 기쁨입니다. 이 프로젝트의 소스코드는 모듈화와 재사용성을 고려해 작성되었으며, 앞으로 더 많은 단어와 재미있는 테마를 추가할 계획입니다.

혹시 비슷한 고민을 하는 부모 개발자분들이 계신다면, 여러분도 아이만을 위한 특별한 '놀이터'를 만들어보시는 건 어떨까요?

혹시나 궁금 하신 분들을 위해 압축파일 링크 공유 합니다. WordCard

최근 AI를 이용한 개발에 RULES.md로 코딩 규칙을 정하고 readme.md 파일을 생성 해둔 이후 코드 작성을 진행 하는 테스트를 진행하고 있습니다. 해당파일들도 포함되어 있습니다.

파일내 전문가는 AI에 역활을 주어 결론을 도출 하는 형식으로 사용 했습니다.

프로젝트 진행은 개인의 스터디를 위해 개발 되는 부분들이 있음을 양해 해주시기 바랍니다.


저작권 및 이용 안내 (License)

본 프로젝트의 소스 코드와 자산은 아래의 라이선스 정책을 따릅니다.

CC BY-NC-ND 4.0 (저작자표시-비영리-변경금지)

실행 허용: 코드 수정 없이 원본 상태로 실행 및 학습 목적으로 사용하는 것만 허용됩니다.

비영리: 상업적 목적으로 이용할 수 없습니다.

변경 금지: 코드를 수정하거나 이를 기반으로 한 2차 저작물 제작이 금지됩니다.

* 본 프로젝트의 공유는 AI를 이용한 코딩 방법에대한 공유와 피드백을 위해 공유 합니다.

#한글공부 #6세교육 #육아코딩 #한글게임 #웹개발 #Javascript #ParentingTech #딸바보개발자 #홈스쿨링 #한글놀이 #쑥쑥한글퀴즈 #GoogleAntigravity


[AI로 생성한 프로젝트의 인포그래픽]




2026년 1월 3일 토요일

Modbus Monitor: 이제 데이터 흐름이 보인다! 실시간 그래프 기능 탑재 📈

 안녕하세요! ㄱRockdiesel3 입니다.

산업용 통신 프로토콜의 표준인 Modbus를 더욱 효율적으로 모니터링하기 위한 Modbus Monitor의 최신 업데이트 소식을 전해드립니다.

이번 업데이트의 핵심은 사용자가 데이터의 변화 추이를 한눈에 파악할 수 있도록 돕는 Real-time Graphing(실시간 그래프) 기능입니다. 이제 숫자 기반의 모니터링을 넘어, 시각적인 분석이 가능해졌습니다.


1. 이번 업데이트의 핵심: Real-time Graphing

데이터가 갑자기 튀거나 주기적으로 변하는 현상을 놓치지 않도록 그래프 윈도우(Graph Window) 기능을 대폭 강화했습니다.

  • 최대 8개 채널 동시 추적: Coil, Discrete Input, Holding/Input Register 등 다양한 주소를 최대 8개까지 등록해 실시간으로 비교 분석할 수 있습니다.

  • 유연한 축 설정: 실제 시간 기반의 Time Mode와 데이터 패킷 수신 순서 기반의 Count Mode를 지원하여 데이터 패턴을 명확히 볼 수 있습니다.

  • 직관적인 제어: Start/Stop 버튼과 체크박스를 통해 원하는 데이터 구간만 손쉽게 기록하고 관리할 수 있습니다.


2. 완벽한 테스트 환경: Modbus Simulator

강력해진 모니터 기능을 하드웨어 장비 없이도 즉시 검증할 수 있도록 Modbus Simulator도 최적화되었습니다.

  • 워크스페이스 연동: Modbus Monitor에서 설정한 .json 파일을 로드하여 동일한 테스트 환경을 즉시 구축할 수 있습니다.

  • Dual Protocol 지원: TCP/IP 및 Serial RTU 통신 환경을 모두 시뮬레이션할 수 있어 다양한 현장 대응이 가능합니다.

  • 스마트 메모리 관리: ModbusSparseDataBlock 적용으로 넓은 주소 대역에 유연하게 대응하며, 안정적인 데이터 송수신을 보장합니다.


3. 주요 개선 사항 요약

기능 구분주요 업데이트 내용
모니터링실시간 그래프 시각화, 패킷 분석 및 로그 시스템 강화
시뮬레이터모니터 설정 가져오기(Import), 스마트 메모리 할당
안정성안전한 프로세스 종료(Safety Shutdown) 및 실시간 데이터 동기화

4. 맺음말

이번 업데이트를 통해 Modbus 통신 분석의 정확도와 편의성을 한층 높였습니다. 특히 새롭게 추가된 그래프 기능은 시뮬레이터와의 연동을 통해 사전 검증이 완료되어, 더욱 안정적인 모니터링 환경을 제공합니다.

이번 업데이트로 더욱 개선되기를 바랍니다. 감사합니다!










🤖 리틀 로직 봇(Little Logic Bot) 개발 여정기

  "아빠가 설계하고 딸이 완성하는 로직 퍼즐" 만 4~6세 아이들을 위한 초기 코딩 교육용 웹 게임 개발 프로젝트 📌 프로젝트 개요 탄생 배경 이 프로젝트는 펌웨어 엔지니어인 아빠가 딸을 위해 시작한 교육용 게임입니다. 복잡한 텍...