Skocz do zawartości

Przeszukaj forum

Pokazywanie wyników dla tagów 'micro:bit'.

  • Szukaj wg tagów

    Wpisz tagi, oddzielając przecinkami.
  • Szukaj wg autora

Typ zawartości


Kategorie forum

  • Elektronika i programowanie
    • Elektronika
    • Arduino i ESP
    • Mikrokontrolery
    • Raspberry Pi
    • Inne komputery jednopłytkowe
    • Układy programowalne
    • Programowanie
    • Zasilanie
  • Artykuły, projekty, DIY
    • Artykuły redakcji (blog)
    • Artykuły użytkowników
    • Projekty - DIY
    • Projekty - DIY roboty
    • Projekty - DIY (mini)
    • Projekty - DIY (początkujący)
    • Projekty - DIY w budowie (worklogi)
    • Wiadomości
  • Pozostałe
    • Oprogramowanie CAD
    • Druk 3D
    • Napędy
    • Mechanika
    • Zawody/Konkursy/Wydarzenia
    • Sprzedam/Kupię/Zamienię/Praca
    • Inne
  • Ogólne
    • Ogłoszenia organizacyjne
    • Dyskusje o FORBOT.pl
    • Na luzie

Kategorie

  • Quizy o elektronice
  • Quizy do kursu elektroniki I
  • Quizy do kursu elektroniki II
  • Quizy do kursów Arduino
  • Quizy do kursu STM32L4
  • Quizy do pozostałych kursów

Szukaj wyników w...

Znajdź wyniki, które zawierają...


Data utworzenia

  • Rozpocznij

    Koniec


Ostatnia aktualizacja

  • Rozpocznij

    Koniec


Filtruj po ilości...

Data dołączenia

  • Rozpocznij

    Koniec


Grupa


Imię


Strona

Znaleziono 2 wyniki

  1. Dzień dobry. Czy mogę zasilić micro:bita za pomocą powerbanku? Posiadam ADATA P20000QCD 20000mAh. Nie próbowałem, martwie się o uszkodzenie micro:bita. Dziękuję za odpowiedź.
  2. Być może słyszeliście o płytce micro:bit, którą BBC chce rozdawać dzieciom w Wielkiej Brytanii? Otóż istnieje oddolna inicjatywa, żeby na tą płytkę zrobić Pythona, tak, żeby dzieci mogły poprogramować też troche na otwartej platformie, a nie tylko same Microsofty, mbedy i kompilacja "w chmurze". Jest to robione przez ochotników w wolnym czasie, ale myślę, że już stanowi całkiem niezłą alternatywę. Aby przyśpieszyć i polepszyć ten proces, powstał program Micro World Tour, który pozwala nam pobawić się przedpremierową wersją tej płytki przez tydzień -- potem musimy ją wysłać do następnej osoby. Wziąłem udział w tym programie i zbudowałem tego prostego robota. Ponieważ miałem tylko tydzień i dużo planów, postanowiłem zacząć od najprostszej rzeczy, czyli robota jeżdżącego, omijającego przeszkody, zbudowanego z tego, co miałem pod ręką (nie było czasu na zamawianie części): Tak więc mamy tu dwa 9-gramowe serwa przerobione na ciągłą rotację, małą płytkę prototypową, pojemnik na baterię (potem musiałem go zastąpić pudełkiem z LiPo), kulkę podporową, dwa kółka i trochę kabelków. Potem jeszcze dodałem czujnik odległości SHARP od Pololu (niestety wymagany jest taki na 3V). Do połączenia z płytką użyłem zwykłych śrub wkręconych w kawałek plastiku. Całość zebrana do kupy taśmą dwustronną. Jak już wspomniałem, programowane toto jest w Pythonie. Mieliśmy trochę problemów z implementacją PWM na tej płytce i musiałem dodać obejscia przy inicjalizacji timera (to będzie naprawione w wersji finalnej). Kod wygląda mniej więcej tak: import microbit class Servo: def __init__(self, pin, trim=0): self.pin = pin self.trim = trim self.position = 90 self.set_period() def set_period(self): self.pin.set_analog_period(20) self.write(self.position) microbit.sleep(80) self.pin.set_analog_period(20) self.write(self.position) microbit.sleep(80) self.pin.write_analog(0) def write(self, degrees): self.pin.write_analog(int(25 + 100 * degrees / 180 + self.trim)) self.position = degrees class Robot: def __init__(self): self.left_servo = Servo(microbit.pin0, 2) self.right_servo = Servo(microbit.pin1, 1) def go(self, distance): microbit.display.show(microbit.Image.ARROW_S) self.left_servo.write(0) self.right_servo.write(180) microbit.sleep(int(distance * 2000 / 17)) self.stop() def turn(self, angle): if angle > 0: microbit.display.show(microbit.Image.ARROW_E) self.left_servo.write(0) self.right_servo.write(0) microbit.sleep(int(angle * 64 / 9)) else: microbit.display.show(microbit.Image.ARROW_W) self.left_servo.write(180) self.right_servo.write(180) microbit.sleep(int(-angle * 64 / 9)) self.stop() def stop(self): microbit.display.show(microbit.Image.DIAMOND) self.left_servo.write(90) self.right_servo.write(90) def get_distance(self): return microbit.pin2.read_analog() robot = Robot() while True: robot.go(5) if robot.get_distance() > 700: robot.turn(20) left_distance = robot.get_distance() robot.turn(-40) right_distance = robot.get_distance() robot.turn(20) if left_distance < right_distance: robot.turn(60) else: robot.turn(-60) Jak widać, wielkiej filozofii nie ma. Natomiast genialnie się to testuje, bo mamy dostęp do konsoli Pythona po złączu szeregowym, więc wszystkie komendy możemy sobie "na żywo" wypróbować. Na koniec robot w akcji:
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.