Hot
-
C#
EXCEL에서 CODE 128 폰트로 읽을 수 있는 바코드 만들기 렛츠 고우
조천 농협 선과 프로그램 개발중에 라벨 프린터에 바코드를 담은 엑셀 파일을 던져줘야 하는 상황이 발생했다 .단순히 Code 128 폰트만 다운 받아서 설치하면 되는 줄 알았던 나는 생성된 바코드가 리더기를 통해 읽어지지 않는 상황을 받아 드릴 수 가 없었다. 왜 다른 바코드는 읽히는데 내가 만든 바코드는 읽히지 않을까 Code 128 은 Code 38에 비해 바코드 구성이 복잡하고 동일한 데이터도 훨씬 짧은 바코드를 구성한다. -> Code 38를 사용하는경우 단순하게 *1234* 별표를 앞뒤로 추가하여 작성 후 폰트 변경을 해주면 정상적인 바코드가 생성된다. -> 하지만 농협에서 사용하는 바코드는 Code 128이라 무조건 해당 바코드를 생성 해내야 했다. -> 유투브: www.youtube.co..
-
Machine vision
Cognex 프로그램 In-sight Explorer 처음 사용 하기 !
실행하면 뜨는 화면 일반적인 엑셀 시트를 닮았다 . Cognex 사에서도 엑셀을 모방하여 만들어 누구나 코딩을 배우지 못한 사람도 손 쉽게 사용 할 수 있도록 만들었다. 한 픽셀 =8 byte 2^8 = 256 Gray level 0~ 255 0 -> 검은색 255-> 희색 1.sheet 에 extractblobs이라고 작성하면 됩니다. 2.sheet에 작성하면 설정 창이 팝업된다. 3.우선 Region으로 영역을 설정해준다. 촬영하는 제품의 범위를 정해주면 된다. 4.영역을 선택 해주고 다시 더블클릭하면 설정창으로 돌아온다. 5.external region = 0 6.Threshold =화이트에서 블랙으로 갈 때 Grey level 120 이상 검출(배경으로 부터 다른 부분을 분리하는 기준) 6-1. ..
-
Machine vision
머신비전 개론 - feat 분해능 이해 안된다고 부끄러워하지 말자 !
머신 비전이란 무엇인가 : 각종 제조 및 생산 장비 또는 공정들을 제어하거나 관련 정보를 얻기 위해서 실제의 영상 정보를 자동으로 취득후 분석하기 위하여 광학계 및 카메라 등을 이용하여 비 접촉으로 검사하는 것을 머신비전이라고 한다 -> 생산 제품들의 품질과 공정 제어를 위한 자동화 검사 시스템 머신비전의 응용 분야 (시험예상) Guidance : 부품의 정확한 위치를 로봇에 전달하여 위치 보정이 가능(위치 보정) /Wafer Processing /Die Processing Inspection: Verify Quality and Assembly -> 제품의 품질 및 조립상태 /특정부품의 유무 판단과 부품의 위치 계산 Gaging : 물체의 크기 또는 거리 직경 등의 계측에 사용합니다. 3개의 점을 통해 ..
-
Blender 블렌더 Blender로 리얼한 불과 연기 만드는 방법 구체적으로 알려드립니다. Blender Tool을 사용하여 연기 제작 방법 https://pepepien.tistory.com/312 블렌더 #K 단축키 모음 블렌더를 하면서 유용한 단축키들을 모아봤습니다. 공부하면서 메모했던 것을 다시 다듬었지만.. 아직 블린이라서 잘못된 부분이 있을 수 있습니다. 추가할 점이 있다면 언제든지 댓글 부탁드 pepepien.tistory.com 시스템 요구 사항 지원 플랫폼 : 윈도우 XP이상, 맥 OSX 10.6이상 그리고 리눅스 CPU : 32Bit 듀얼 코어 2GHz 이상 RAM : 2GB 이상 그래픽 카드 : CUDA, OpenGL를 지원하는 그래픽 카드 / 256MB이상 최소 권장 최적 CPU 32Bit듀얼코어 2GHz 64Bit 쿼드코어 64Bit 옥타코어 RAM 2GB 8GB 16G..
-
Linux
리눅스 우분투에서 원도우 원격 접속하기 (rdesktop, remmina)
[rdesktop]https://ko.wikipedia.org/wiki/Rdesktop rdesktop - 위키백과, 우리 모두의 백과사전위키백과, 우리 모두의 백과사전.ko.wikipedia.orgrdesktop은 마이크로소프트의 원격 데스크톱 프로토콜(RDP)의 클라이언트 소프트웨어 구현체이다. rdesktop은 GNU 일반 공중 사용 허가서(GPL-3.0 이상)의 요건에 종속되는 자유-오픈 소스 소프트웨어이며 리눅스, BSD, 마이크로소프트 윈도우용으로 이용이 가능하다. 2013년 9월 기준으로 rdesktop은 RDP 5 프로토콜의 큰 부분 집합을 구현한다. 현대 버전의 윈도우의 원격 데스크톱 연결과는 달리 rdesktop은 윈도우 NT 4.0 터미널 서버 에디션과 윈도우 2000 서버에 사용되는..
-
Python
VScode PyGame 설치 방법, 틀 형성 코드 및 Linting 설정
pip3 install pygame 파일 -> 기본설정 -> 설정 -> 검색창에 linting 검색 -> Python > Linting : Enabled 체크 해제 이렇게 해야 파이게임이 문제 없이 실행 됩니다. 간단한 코드로 pygame 화면을 생성해 봅시다. import pygame pygame.init() # 초기화 반드시 필요 # 화면 크기 설정 screen_width = 480 # 가로크기 screen_height = 640 # 세로크기 screen = pygame.display.set_mode((screen_width, screen_height)) # 화면 타이틀 설정 pygame.display.set_caption("Joonho Game") # 이벤트 루프 running = True # 게임..
최신 글
-
Javascript Javascript웹 백엔드 학습 No.1 : Token 만드는 코드 -> Farcade Pattern PADpadStart와 padEnd 함수는 ES8(ES2017)에 새롭게 추가된 기능이다. pad는 좌우에 특정한 문자열로 채우는 기능이다. 좀더 자세히 얘기하면 첫번째 파라미터인 maxLength를 받아 문자열의 길이가 maxLength보다 작을 경우 나머지를 특정한 문자열로 채워주는 기능이다. 이때 두번째 문자열을 넘겨주지 않으면 빈 공백으로 문자열을 채운다.const result = String(Math.floor(Math.random() * 1000000)).padStart(6, "0");console.log('result', result)Tokenconsole.log("안녕하세요 !")function getToken(num) { const result = String(Math.floor(..
-
DataBase 업그레이드 할 수 없는 아이템 구하기 -서브쿼리 사용 https://school.programmers.co.kr/learn/courses/30/lessons/273712 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr[SQL] 더 이상 업그레이드할 수 없는 아이템 조회하기문제각 아이템들은 업그레이드가 가능하며, 업그레이드한 아이템을 ITEM_TREE 테이블에서 관리하고 있습니다.ITEM_TREE 테이블의 PARENT_ITEM_ID는 해당 아이템으로 업그레이드하기 전 아이템의 ID를 의미합니다.더 이상 업그레이드할 수 없는 아이템의 아이템 ID(ITEM_ID), 아이템명(ITEM_NAME), 아이템의 희귀도(RARITY)를 출력하는 SQL문을 작성해야 합니다.결과는 .. -
SW Dev Portfolio CPU 코어와 스레드: 동시성·시분할·병렬 처리 한눈에 이해하기 핵심 개념 정리1. CPU 코어실제로 명령어를 계산하는 물리적인 작업자입니다.1코어: 실제 작업자 1명2코어: 실제 작업자 2명코어가 많을수록 여러 계산을 실제로 동시에 처리하기 유리합니다.2. 하드웨어 스레드CPU가 동시에 받아들일 수 있는 실행 흐름 자리입니다.1코어 1스레드: 실행 흐름 자리 1개1코어 2스레드: 실행 흐름 자리 2개지만, 물리 코어 자원은 공유2코어 2스레드: 각 코어에 실행 흐름 자리 1개씩 존재1코어 2스레드= 직원 1명 + 업무 진행표 2개2코어 2스레드= 직원 2명 + 직원별 업무 진행표 1개3. 소프트웨어 스레드프로그램 내부에서 만든 독립적인 실행 흐름입니다.소프트웨어 스레드 A: 화면 처리소프트웨어 스레드 B: 파일 다운로드소프트웨어 스레드 C: 계산소프트웨어 스레드 D..
-
카테고리 없음 PLC 이더넷 통신 초기 셋팅 1. XG5000 프로그램에서 새프로젝트 생성 2. USB 케이블로 PC 에 연결후 PLC 읽기 3. 접속설정 LSPLC 4. 온라인 탭 -> 읽기 모드읽기 선택 후 해당 알림창이 뜨면 예 클릭 기존 프로그램에 셋팅된 모듈을 제거 하고 실제 PLC 설치된 모듈로 셋팅해준다 모두 선택 이런 경우에 트리 구조중 데이터 메모리를 클릭하여 전부 선택 후 읽기 진행 PC IP 대역과 동일하게 셋팅하기 그리고 우선 다시 PLC 쓰기를 진행해야한다 간소한 셋팅으로 진행 [스톱] 프로그램도 체크 제거 후 확인 버튼 쓰기를 모두 마치고 PLC 전원은 1회 차단 했다가 다시 공급 접속 설정 - LSPLC 에서 Ethernet Module 로 변경 설정 버튼 클릭 IP 찾기 버튼으로도 진행 가능 확인 클릭 후 접속 테스..
-
C# TCP/IP 통신 정리 TCP /IP란 TCP/IP는 인터넷이나 내부 네트워크에서 데이터를 주고받기 위한 대표적인 통신 규칙입니다. 두가지 핵심 프로토콜을 함께 부르는 말입니다. TCP = Transmission Control Protocol ( 전송제어 프로토콜 )IP = Internet Protocol (인터넷 프로토콜 ) TCP = 데이터가 손실 없이 제대로 도착했는지 관리하는 역할IP = 목적지까지 데이터를 보내는 역할 TCP의 역할1. 연결 관리 2. 신뢰성 보장3. 순서 보장4. 재전송5. 흐름 제어 6. 혼잡제어TCP는 단순히 데이터를 보내는것이 아니라상대방과 연결을 맺고 , 데이터 순서를 확보하고 도착여부를 확인하고 손실되면 다시 보내고 상대방이 받을 수 있는 만큼만 보내고 네트워크가 혼잡하면 속도를 줄이고..
-
카테고리 없음 await은 Thread를 막지는 않는다. 하지만 await을 쓴 "현재 메서드의 다음 줄 실행" 은 기다리게 만든다 이 두개는 서로 다른 말이다private async void BTN_Connect_Click(object sender, EventArgs e){ MessageBox.Show("1. 연결 시작"); await PlcScanLoopAsync(plc, token); MessageBox.Show("2. 스캔 루프 종료됨");}1. PlcScanLoopAsync가 시작됨2. PLC 통신 await 지점에서 UI Thread는 풀려남3. 그래서 화면은 멈추지 않음4. 다른 버튼 클릭도 가능함5. 하지만 MessageBox.Show("2. 스캔 루프 종료됨")은 실행 안 됨6. PlcScanLoopAsync가 완전히 끝나야 그 아래 줄이 실행됨Thread는 막히지 않아서 UI 쪽 작업을 한다던지 다른.. -
C# EXCEL에서 CODE 128 폰트로 읽을 수 있는 바코드 만들기 렛츠 고우 조천 농협 선과 프로그램 개발중에 라벨 프린터에 바코드를 담은 엑셀 파일을 던져줘야 하는 상황이 발생했다 .단순히 Code 128 폰트만 다운 받아서 설치하면 되는 줄 알았던 나는 생성된 바코드가 리더기를 통해 읽어지지 않는 상황을 받아 드릴 수 가 없었다. 왜 다른 바코드는 읽히는데 내가 만든 바코드는 읽히지 않을까 Code 128 은 Code 38에 비해 바코드 구성이 복잡하고 동일한 데이터도 훨씬 짧은 바코드를 구성한다. -> Code 38를 사용하는경우 단순하게 *1234* 별표를 앞뒤로 추가하여 작성 후 폰트 변경을 해주면 정상적인 바코드가 생성된다. -> 하지만 농협에서 사용하는 바코드는 Code 128이라 무조건 해당 바코드를 생성 해내야 했다. -> 유투브: www.youtube.co..