방명록
비밀글
이 름
패스워드
홈페이지

  1. 2017.07.04 18:37  Edit/Delete  Reply

    비밀댓글입니다

  2. 2017.07.04 17:55  Edit/Delete  Reply

    비밀댓글입니다

  3. 2017.02.24 15:07  Edit/Delete  Reply

    비밀댓글입니다

  4. 유니티맨 2016.12.03 21:47 신고  Edit/Delete  Reply

    현재 유니티로 게임 개발 중인데요

    지금 UI Button 으로 상 좌 우 방패 모양을 이미지로 띄워놨거든요

    이것을 실행 시켰을 때 안 보였다가 특정키를 누르면 나타나게 하다가 사라지게 하는 법을 몰라서 질문 드려요 !

    • Favicon of http://blog.danggun.net BlogIcon 당근천국 2016.12.04 14:15 신고  Edit/Delete

      특정키를 눌러
      start()에 '오브젝트.renderer.enabled = false;'이렇게 하시면 오브젝트가 보이지 않는 상태가 됩니다.
      키를 눌렀을때 .renderer.enabled=true; 해주시면 됩니다.

  5. 스테퍼 2016.11.25 23:38 신고  Edit/Delete  Reply

    안녕하세요
    자동블라인드 만들고 있는 학생입니다.
    cds를 입력으로하여 스테퍼 모터를 제어하고자 하는데 문제가 있어서요..
    조언좀 부탁드려도 될까요? ㅠㅠ

    #include <SoftwareSerial.h>
    #include<StepperMulti.h>
    const int stepsPerRevolution = 1024;
    StepperMulti stepper(stepsPerRevolution,8,10,9,11);
    StepperMulti stepper2(stepsPerRevolution,4,6,5,7);
    int TxPin = 2;
    int RxPin = 3;
    SoftwareSerial BTSerial(TxPin, RxPin);
    void setup()
    {
    Serial.begin(9600);
    BTSerial.begin(9600);
    stepper.setSpeed(8);
    stepper2.setSpeed(8);
    }
    int flag=0;
    void loop()
    {
    int sensorValue = analogRead(A0);
    Serial.print("CDS = ");
    Serial.println(sensorValue);

    if (BTSerial.available())
    {
    char cmd = (char)BTSerial.read();
    Serial.write(BTSerial.read());
    if(cmd == '1') // '1' 누르면정방
    {
    stepper.setStep(stepsPerRevolution);
    stepper.moveStep();
    }
    else if(cmd == '0') // '0' 누르면역방
    {
    stepper.setStep(-stepsPerRevolution);
    stepper.moveStep();
    }
    }
    step1(); //센서값 모터제어 함수
    }

    void step1()
    {
    int sensorValue = analogRead(A0);
    if(flag==0)
    {
    if(sensorValue > 850 ) // 정방향
    {
    stepper2.setStep(stepsPerRevolution);
    stepper2.moveStep();
    flag=1;
    }
    }
    else if(flag==1)
    {
    if(sensorValue < 450) //역방향
    {
    stepper2.setStep(-stepsPerRevolution);
    stepper2.moveStep();
    flag=0;
    }
    }
    }
    스텝모터(28byj-48)와 모터드라이브(ULN2003 ) 조도센서(gl5537)로 모터 제어중입니다.

    void step1() 함수가 센서로 모터를 제어하는 소스인데요 ... 이부분의 flag 사용방법을 아직도 잘 모르겠어서요 ㅠㅠ

    원하는 동작은 센서값(850이상)이 들오면 설정한 스텝수(stepsPerRevolution값) 만큼 한번돌고 후에 센서값이 850이상 계속들어와도 멈춰 있는건데요...역방향은 센서값을 450이하 로 잡앗구요.

    소스를 해석해보면 처음에 flag=0으로 초기화해주었으니 flag=0 인상태에서, step1()함수의 정방향 모터가 스텝수만큼 동작하고(센서값이850이상들어오고있다는 가정하에) flag=1이 되고(모터는 정지상태), 다음에 역방향이 flag=1 라서 해당되지만 센서값이 450이하가 아니라면 동작하지 않고있다가, 450이하가 들어오면 역방향 한번돌고, flag=0이 되고 정지해 있다가 센서값이 다시 850이상 들어오면 정방향 동작을 하는 것 으로 생각 되는데... 맞는건가요?ㅠㅠ
    틀리다면 어디를 고쳐야 하나요??

    • Favicon of http://blog.danggun.net BlogIcon 당근천국 2016.11.26 09:54 신고  Edit/Delete

      저한테 질문하기전에 한번 돌려보시는게 좋을텐데요 ㅎㅎㅎㅎ
      어디가 어떻게 안되는지를 얘기하셔야 도움을 드릴 수 있습니다.
      소스 분석은 직접 하셔야죠.

티스토리 툴바