728x90

Unity 85

Unity - Rect Transform Unity의 UI에서 가끔은 필요에 따라 크기나 위치를 여러 가지로 변경해야 할 때가 있다. 자주 사용하지 않지만 어쩌다 사용하려고 보면 까먹어서 다시 검색하게 되는데 이를 정리해 본다. 1. Rect Transform - 값 읽기 > offsetMin; // Left, Bottom > offsetMax; // Right, Top - 값 적용 > GetComponent().offsetMin = new Vector2(100, 100); // (left, bottom) 적용됨 > GetComponent().offsetMax = new Vector2(100, 100); // (-right, -top) 적용됨 2. Anchors - 값 읽기 > anc.. 개발 관련/SW, App 관련 2024. 4. 22.
로봇제작 - 프레임 그립 진행중 지난번에 이어 이번에는 그립 부분을 진행 중이다. 생각보다 많은 시행착오를 겪는 중이다. 이렇게까지 안 맞을 줄은 생각하지 못했다. 아.. 설계를 좀 더 구체적으로 했어야 했다. 가장 큰 문제가 되는 것이 바로 조립과 분해가 가능해야 보수가 가능하다는 것이다. 이것을 너무 쉽게 간과한 것 같다. 이 부분을 진행하면서 즉석으로 생각하니까 어지럽다.. 따라서 해당 부분을 고려해서 하다 보니 참 어렵게 진행되는 것 같다. 추가 부품을 구매했을 때 무게를 고려해서 작은 서보모터 SG90도 구입했었는데, 이걸 적용하려면 그립설계를 완전히 다시 해야 한다는 것이다. 더구나 볼트 고정하는 부분도 크기 안 맞아서 이 부분을 다른 방법으로 고정해야 해서 좀 어렵게 되었다. 따라서 일단은 기존대로 진행하기로 하였다. 그립.. 개발 관련/프로젝트 2024. 3. 23.
로봇제작 - 프레임 보완 진행중 지난번 프레임 설계에 따른 출력 미스로 인해 두 번째 프레임부터 맞지 않아 다시 설계하고 다시 출력해서 커팅을 진행하였다. 끝까지 잘 맞는지 확인했어야 했다. 그러면 시간이며 재료며 이런 걸 줄일 수 있었을 텐데.. 아무튼 아래와 같이 다시 커팅하였다. 이외에도 나머지 집게도 커팅을 진행하였다. 이제 모든 부품을 커팅했기 때문에 조립만 해주면 되는 사항이다. 일반 커터칼로 커팅해서인지 자를 때 약간씩 여유를 두고 했더니 살짝 맞지 않는 부분이 있어 조금 다듬었다. 서보의 오목한 부분도 좀 다듬고 해서 조립을 시작했다. 그런데 한 가지 낭패가 생겼다. 6mm 볼트가 부족하다. 5mm는 많은데... 이런.. 적어도 서보와 프레임 조립에서 최소한 6~8mm가 준비되어 있어야 하는데... 부족하다.. 사야 된다.. 개발 관련/프로젝트 2024. 3. 9.
Unity - 사물인식 진행 Unity를 이용한 사물인식에서 지난번 아래와 같은 포스트로 진행했고 이 결과를 이용하여 onnx로 변환한 뒤 Unity인식시키기 위한 작업을 줄 곳 진행했었다. Tensor Flow를 이용해야 하는 관계로 AMD의 Radeon 환경에서는 불가능에 가까워 지포스가 있는 PC에서 진행했다. 사물인식을 위한 모델 학습 시도(TensorFlow / ONNX) (tistory.com) 사물인식을 위한 모델 학습 시도(TensorFlow / ONNX) 지난번 사물인식을 위한 보완으로 파이토치를 검토하던 와중에 다른 방법도 있지 않을까 하고 검색해 봤다. 한 가지 방법으로 시도해 봤는데, 역시나 AMD 시스템에서는 안 되는 것 같다. 있다고 tipon.tistory.com 결과적으로 keras 모델을 onnx로 컨.. 개발 관련/프로젝트 2024. 3. 1.
로봇제작 수동모드 테스트 영상 Unity의 UI 업데이트로 수동모드 버튼을 만들고 즉각적으로 움직이는 RC카 형태로 테스트한 것을 동영상으로 기록하여 업로드한다. 앞으로 갈 때와 뒤로 갈 때의 방향이 뒤로 갈 때가 오히려 직진성이 좋다. 왜 앞으로 하면 옆으로 가는지.. 싸구려라 중심이 안맞는다는 증거다. 모터도 덜렁덜렁거리고.. 그래도 저렴하게 테스트하기에는 괜찮으니 그냥 하도록 하자... 영상에서 보는 것처럼 카메라와 UI를 함께 보면서 제어하도록 하였다. 다음번엔 로봇 팔의 프레임을 일단은 포맥스로 잘라서 해보기로 했다. 2T가 생각보다 약한데.. 아크릴이 튼튼하긴 하지만 포맥스가 커팅하기 쉽고 저렴하니까 일단은 한번 이걸로 구성해 보도록 한다. 테스트 겸 음성인식으로 제어해 봤는데 한쪽 바퀴가 돌지 않는다.. 뭐지..;;; 개발 관련/프로젝트 2024. 2. 19.
로봇제작 Unity UI 업데이트 사물인식에 대한 컨버팅 방법을 계속해서 찾고 있는 중이면서 하드웨어 및 제어 프로그램 등을 손보고 있다. 이제는 음성인식을 통한 내부의 3D 테스트는 할 필요가 없기에 해당부분은 삭제하였다. 아울러 이런거 하면서 기본적으로 하는 남들도 다 해보는 RC카 모드로도 한번 테스트해 보았다. 이를 위해 몇가지 업데이트를 진행했다. 수동모드로 버튼으로 바로 움직이도록 수정했다. Arduino의 경우에 즉시 움직이려면 적어도 다음 한 줄의 코드는 추가해 주어야 한다. _bluetooth.setTimeout(40); 기본적인 타임아웃이 이보다 높게 설정되어 있어 즉각처리가 되지 않아 지연이 발생된다. 이는 Unity에서 UI버튼 눌렀을때 움직이도록 하고 띄었을 때 정지하도록 이전 포스트에서 eventTrigger에 .. 개발 관련/프로젝트 2024. 2. 12.
Unity EventTrigger 사용 Unity에서 UI 버튼을 사용하다 보면 좀 더 기능이 필요했으면 하고 실제로도 필요한 기능이 있는데 이럴 때는 EventTrigger를 사용하면 된다 코드에서 컴포넌트를 추가하여 사용해도 되고 인스펙터에서 추가해서 사용해도 되겠다. 아래의 것을 스크립트로 필요한 사항만 가져다 사용해도 될 것 같다. 아니면 EventTrigger거만 사용하고 실제적인 것은 public으로 연결해도 된다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63.. 개발 관련/SW, App 관련 2024. 2. 4.
Arduino 아날로그 핀의 디지털 핀 사용 지난번 아두이노 테스트에서 디지털 핀이 부족하다고 판단되어 방법이 있는지 찾아보았다. 생각보다 금방 해결책이 나왔는데, 아두이노에서 아날로그 핀을 디지털 핀으로도 사용할 수 있다고 한다.. 왜 몰랐지?... 사실 이제까지 아두이노를 활용한 여러 프로젝트들을 진행하면서 지금처럼 많은 핀을 사용한 적이 없었다. 딱 필요한 몇 가지 핀들만 사용해서 진행했다. 아래의 아두이노 공식 사이트에 공개된 아두이노 우노 R3의 핀 맵을 확인 해 보면 바로 알 수 있다.!!!! (오래 사용했지만 이제 알게 되었다는... @_@;; ) 그리고 주력으로 사용할 아두이노 나노의 핀맵도 확인해 보면 다음과 같다. 역시 우노와 동일한 핀의 역할을 하는 것을 알 수 있다. 즉, 아두이노의 아날로그 핀은 A0 ~ A5까지로 정해져 있.. 개발 관련/프로젝트 2023. 12. 21.
아두이노 시스템 설계 지난번 음성인식을 통한 서보모터 구동 이후 추가적인 센서들의 테스트들이 필요하여 몇몇 가지는 진행했다. 그전에 사물인식의 사물을 내가 정한 이미지들로 인식하기 위한 학습을 진행하고자 했는데 이를 위해 파이토치(PYTORCH)를 활용하여 ONNX로 변환하고자 했는데, 문제는 이를 위해서 적절한 사용으로 빠르게 진행하려면 시스템 환경이 CUDA를 지원하는 Nvidia GPU에 맞춰져 있다는 사실을 알았다. AMD Radeon에서도 ROCm을 이용하여 가능하나 신뢰성의 문제점과 리눅스로 해야 한다는 검색결과가 나왔다. 물론 CPU로 가능하다고 하는데 느리다고 하여, 이 부분은 좀 더 시간을 두고 진행해야 한다는 결론이 나왔다. 시간 날 때 시도해 봐야겠다. 따라서 사물인식의 보완 부분은 일단 시간나는데로 천천.. 개발 관련/프로젝트 2023. 12. 17.
Unity 음성인식으로 서보모터 작동 지난번 작동에 대한 동영상을 보면 아래와 같다. 그때 언급했던 것처럼 서보모터는 그냥 테스트용으로 작동이 잘 되는지 확인하는 용도이다. 즉, 음성을 인식하고 내용을 분석해서 방향과 속도, 시간을 스마트폰의 블루투스를 통해 아두이노의 블루투스를 통해 전달받고, 그 전달된 값을 다시 해석하여 서보모터를 동작시키는 것이 주 목표였다. 회전의 경우는 제자리에서 돌아야 하기 때문에 교차되도록 서보모터가 동작한다. 지난번 코드를 살펴보면 된다. 유니티의 속도와 시간이 아두이노의 동작값과 딜레이에 적용이 적합하지 않아서 이 부분에 통일된 방식을 다시 생각해 봐야겠다. 이는 DC모터를 적용할 때 여러 번 테스트하여야 할 것 같다. 개발 관련/프로젝트 2023. 12. 9.
728x90