분류 전체보기 105

[arduino] 기초 (블루투스 모듈 HC-06, AT 명령어 안될 때)

보드 정보: 아두이노 호환 보드 사용한 블루투스 모듈: ZS-040 (펌웨어 버전 linvorV1.8) - 이 블루투스 모듈의 핀은 (칩이 보이게 세로로 두었을 때) 왼쪽부터 RX, TX, GND, VCC를 의미한다. - RX, RXD는 Receive Data, 수신을 의미하고, - TX, TXD는 Transmit Data, 송신을 의미한다. - GND는 Ground, 접지, VCC는 Votage Collector, 전원을 의미한다. - RX, TX는 연결할 때 반대로 연결해야한다. (모듈 RX 핀은 아두이노 TXD 핀에, 모듈 TX 핀은 아두이노 RXD 핀에) - 블루투스 모듈 연결을 확인하기위해 아두이노에 모듈만 연결한 뒤, 시리얼로 `AT`라고 보내는데 답이 없을 경우, 먼저 모든 모듈과 동일하게 ..

컴퓨터 2023.08.13

[arduino] 기초 (서보모터)

서보모터 (servo moter) 주황색선 - 제어용, 빨간색선 - +, 갈색선 - GND 기어가 움직일 각도를 설정할 수 있다. 모터 동작 사이사이에 기어가 움직일 시간을 줘야한다. 너무 짧게 주면 제대로 움직이지 못한다. motor.write(170); // 0~180도 delay(1000); motor.write(10); delay(1000); 버튼을 추가하여 각도를 제어하는 등 다른 부품을 추가하여 활용 수 있다. #include Servo motor; void setup() { // 서보모터를 12번 핀에서 사용한다고 설정 motor.attach(12); } void loop() { int pin2 = digitalRead(2); if (pin2 == 0) { motor.write(170); d..

컴퓨터 2023.07.26

[arduino] 기초 (LED, 버튼, 3색 LED, 가변저항)

물리공작소 LAB 유튜브 동영상을 참고하여 https://wokwi.com/ 시뮬레이터로 진행했습니다. Wokwi - Online ESP32, STM32, Arduino Simulator PowerVotes: You decide. We Do. wokwi.com LED 다리가 짝짝이다. 긴 쪽이 + (power)이고, 짧은 쪽이 - (ground, 접지)로 알맞는 곳에 연결해야한다. analogWrite(11, 30); 코드로 불을 켤 수 있다. 파라미터는 핀 번호랑 전압이다. 전압에 따라 밝기가 달라진다. 0(0v)~255(5v)까지 입력이 가능하다. https://www.arduino.cc/reference/ko/language/functions/analog-io/analogwrite/ 불이 켜지지 않..

컴퓨터 2023.07.26

cassandra 접속을 위한 cqlsh 간단 사용 방법

1. cqlsh 다운로드 아래 링크에서 cassandra 버전을 선택하고, 체크박스를 클릭하여 동의하고, 다운로드한다. 나는 Apache Cassandra를 사용해서 "DataStax Distribution of Apache Cassandra"를 선택했다. https://downloads.datastax.com/#cqlsh 2. 접속 terminal이나 cmd를 실행하고, 다운로드 받은 폴더로 들어가서 압축 해제한 후 아래 명령어를 실행한다. 1.2.3.4에는 접속하려는 cassandra 서버의 IP주소를 입력한다. bin/cqlsh 1.2.3.4 9042 3. keyspace 조회 DESCRIBE keyspaces; 4. 데이터 조회 sql과 매우 비슷하다. select * from abc 참고: ht..

컴퓨터/DB 2022.04.25

[노개북] 실용주의 프로그래머 (Mission 3)

Mission (3) 진짜 요구사항 요구사항을 받았는데, 요구사항이 아닐 수 있습니다! 요구사항이 아니라면 사용자가 진짜로 원하는게 무엇인지 알아내야합니다. 애매한 요구사항에서 진짜 요구사항을 찾아내는 연습을 해봅시다. (1) '연습문제 #33'을 읽습니다. (2) 1-5번까지 문제를 클라이언트가 건넨 요구사항이라 상상하며 문제를 풀어봅시다. (3) 진정한 요구사항이 아닐 경우 어떻게 질문을 해야하는지, 무엇을 알아야 하는지, 왜 그렇게 생각하는지 등 나의 생각을 작성해보세요. ❗️ 풀이과정은 문제당 300자 이상으로 작성해주세요. ❗️ 책에 있는 해답은 참고용이며, 본인의 생각을 잘 작성해주세요. 📌 연습문제 33 다음 문장들이 진정한 요구 사항인가? 가능하다면 진정한 요구사항이 아닌 것을 좀 더 유용..

[노개북] 실용주의 프로그래머 (8장. 프로젝트 전에)

오늘 읽은 범위 🔖 8장. 프로젝트 전에 📝 책에서 기억하고 싶은 내용 실용주의 프로그래머는 요구사항을 받으면 의문점을 떠올리고 의뢰인에게 역으로 질문하며 탐험한다. (p.352) 프로젝트 용어 사전 관리하기 (p. 360) 짝 프로그래밍pair programming, 몹 프로그래밍mob programming: 한 사람이 코드를 입력하는 동안 한 명 혹은 여러명의 팀 동료가 조언하고 고민하며 문제를 함께 푸는 것 (p. 368) 익스트림 프로그래밍eXtream Programming, XP의 실천 방법 중 하나 (p. 369) 애자일agile: '기민하다'는 뜻의 형용사 애자일 선언 중 소프트웨어 개발에서 중요하게 여겨야할 가치 공정과 도구보다 개인과 상호작용 포괄적인 문서보다 작동하는 소프트웨어 계약 협..

[노개북] 실용주의 프로그래머 (7장. 코딩하는 동안)

오늘 읽은 범위 🔖 7장. 코딩하는 동안 📝 책에서 기억하고 싶은 내용 여러분은 개발자로서 ... 경험과 지혜를 축적해 왔다. ..그 느낌을 따라라. 직감이 여러분의 역량에 일조하도록 하라. (p. 277) 일단, 하고 있는 일을 멈춰라. 여러분의 뇌가 정리를 좀 할 수 있도록 약간의 시간과 공간을 확보하라. (p. 278) 코드를 마구 찍어내는데 드는 시간을 줄이고, 오류를 초기에 더 적게 만들기 위한 의도적으로 프로그래밍하는 법 (p. 288) (중 일부만 작성) 지금 무엇을 하고 있는지 알아야 한다. 코드를 상세히 설명할 수 있는가? 계획을 세우고 그것을 바탕으로 진행하라 신뢰할 수 있는 것에만 기대라 우선순위를 정하라 대문자 O (Big O) 표기법 어떤 함수가 O(n)2 시간이 걸린다고 하면, ..

[노개북] 실용주의 프로그래머 (6장. 동시성)

오늘 읽은 범위 🔖 6장. 동시성 📝 책에서 기억하고 싶은 내용 용어 정의 (p. 241) 동시성concurrency: 동시에 실행 중인 것처럼 행동하는 것 ex) 파이버fiver, 스레드, 프로세스 등을 사용 병렬성parallelism: 실제로 동시에 실행되는 것 ex) 여러 개의 일을 동시에 할 수 있는 하드웨어. 코어가 여러개인 CPU, 여러대의 CPU 등 시간적 결합temporal coupling 깨트리기 보통 직선적 사고를 하기 마련이다. ...우리는 동시성을 확보해야 한다. 시간이나 순서에 의존하는 시간적 결합을 끊는 방법을 생각해 내야 한다. (p. 244) 작업 흐름을 분석하라 -> 활동 다이어그램activity diagram 작성하기 (p. 244) 공유 상태는 틀린 상태 상태를 공유하는..

[노개북] 실용주의 프로그래머 (Mission 2)

💡 연습문제 20 (p. 207, Topic 30 변환 프로그래밍) (이벤트에 잘 반응하는 애플리케이션을 만들기 위한) 네 가지 전략 중에서 다음 상황에 맞는 것은 각각 어떤 것일까? 여러 전략을 조합해야할 수도 있다. 5분 동안 '네트워크 인터페이스가 꺼짐' 이벤트를 세 번 받으면 운영 직원에게 알려라. 일몰 후에 층계 밑에서 동작이 감지된 다음 층계 위에서 동작이 감지되면 위층의 전등을 켜라. 다양한 보고 시스템에 주문이 완료되었음을 알리고 싶다. 고객에게 자동차 대출을 집행할 수 있는지 평가하기 위하여 애플리케이션이 세 가지 다른 서비스에 요청을 보내고 응답을 기다려야 한다. ✅ 풀이 과정 일단 4가지 개념을 간단히 정리해보았다. 1. 유한 상태 기계Finite State Machine, FSM: ..