ড্রাইভট্রেন#
ভূমিকা#
ড্রাইভট্রেনে চাকা এবং মোটর থাকে যা রোবটের চালনা ও মোড় নেওয়া নিয়ন্ত্রণ করে। কোড বেস ২.০, সুপার কার বা কাস্টম রোবটের মতো কাঠামোতে ড্রাইভট্রেন পাওয়া যায়।
ড্রাইভট্রেন সংঘর্ষ শনাক্ত করতে এবং রোবটকে নির্ভুলভাবে চলতে ও ঘুরতে সাহায্য করার জন্য ব্রেইনে থাকা ইনার্শিয়াল সেন্সর ব্যবহার করে। প্রতিটি প্রকল্পের শুরুতে, ড্রাইভট্রেন স্বয়ংক্রিয়ভাবে ইনার্শিয়াল সেন্সরটি ক্যালিব্রেট করে। ক্যালিব্রেশনের সময় রোবটটিকে প্রায় 2 সেকেন্ডের জন্য স্থির রাখুন, যাতে রোবটটি সঠিকভাবে চলতে ও ঘুরতে পারে।
ড্রাইভট্রেন কোড করার অনেক উপায় আছে। নিচে সমস্ত ড্রাইভট্রেন পদ্ধতির একটি তালিকা দেওয়া হলো:
ক্রিয়াকলাপ — রোবটটিকে চালনা ও ঘোরানো।
drive— রোবটটিকে অনির্দিষ্টকালের জন্য সামনে বা পিছনে চালনা করে।drive_for— রোবটটিকে একটি নির্দিষ্ট দূরত্বে সামনে বা পিছনে নিয়ে যায়।drive_until— রোবটটিকে সামনে এগিয়ে নিয়ে যায় যতক্ষণ না আই সেন্সর কোনো বস্তু শনাক্ত করে অথবা রোবটটি কোনো সংঘর্ষ শনাক্ত করে।turn— রোবটটিকে অনির্দিষ্টকালের জন্য বামে বা ডানে ঘোরায়।turn_for— রোবটটিকে নির্দিষ্ট সংখ্যক ডিগ্রিতে বামে বা ডানে ঘোরায়।turn_to_heading— রোবটটিকে -359 থেকে 359 ডিগ্রির মধ্যে একটি নির্দিষ্ট দিকে মুখ করে ঘোরায়। রোবটটি লক্ষ্যস্থলে পৌঁছানোর জন্য সবচেয়ে ছোট দিকটি বেছে নেবে।turn_to_rotation— রোবটটিকে একটি নির্দিষ্ট ঘূর্ণনে ঘোরায়।stop— রোবটের চলাচল থামিয়ে দেয়।
মিউটেটর — ড্রাইভট্রেইন সেটিংস সমন্বয় করুন।
set_drive_velocity— রোবটকে বলে দেয় কত দ্রুত চালাতে হবে।set_turn_velocity— রোবটকে বলে দেয় কত দ্রুত ঘুরতে হবে।set_stopping— রোবটটি কীভাবে চলা বন্ধ করবে তা নির্দেশ করে: ব্রেক করে, গতি না কমিয়ে, অথবা স্থির থেকে।set_timeout— রোবট একটি নড়াচড়া শেষ করার জন্য কতক্ষণ চেষ্টা করবে তা নির্ধারণ করে।set_heading— রোবটের বর্তমান দিক পরিবর্তন করে একটি নতুন দিকে নিয়ে যায়।set_rotation— রোবটের বর্তমান ঘূর্ণনকে একটি নতুন ঘূর্ণনে পরিবর্তন করে।
গেটার্স — গতিবিধির অবস্থা পরীক্ষা করুন।
get_heading— রোবটের বর্তমান হেডিং ০ থেকে ৩৫৯ ডিগ্রির মধ্যে ফেরত দেয়।get_rotation— রোবটের বর্তমান ঘূর্ণন ফেরত দেয়।get_velocity— রোবটটি কত দ্রুত চলছে তা শতাংশ হিসাবে ফেরত দেয়, যা -100% থেকে 100% পর্যন্ত হতে পারে।get_yaw— রোবটের বর্তমান ইয় (yaw) ফেরত দেয়।get_roll— রোবটের বর্তমান চাল ফেরত দেয়।get_pitch— রোবটের বর্তমান পিচ ফেরত দেয়।get_crashed— রোবটটি কোনো দুর্ঘটনা শনাক্ত করেছে কিনা, তা একটি বুলিয়ান মান হিসাবে ফেরত দেয়।is_stopped— রোবটটির চলাচল শেষ হয়েছে কিনা, তা একটি বুলিয়ান মান হিসাবে ফেরত দেয়।
কর্ম#
drive#
ড্রাইভ drive রোবটটিকে অনির্দিষ্টকালের জন্য সামনে বা পেছনে চালায়। রোবটটি ততক্ষণ চলতে থাকবে যতক্ষণ না এটিকে মোড় নেওয়া বা থামানোর মতো অন্য কোনো কাজ দেওয়া হয়।
Usage:
drivetrain.drive(direction)
প্যারামিটার |
বর্ণনা |
|---|---|
|
রোবটটি যেদিকে চলে: |
# Build Used: Code Base 2.0
def main():
# Drive forward then stop
drivetrain.drive(FORWARD)
wait(2, SECONDS)
drivetrain.stop()
# Start threads — Do not delete
start_thread(main)
drive_for#
drive_for রোবটটিকে একটি নির্দিষ্ট দূরত্ব পর্যন্ত সামনে বা পিছনে নিয়ে যায়।
Usage:
drivetrain.drive_for(direction, distance, units, wait)
প্যারামিটার |
বর্ণনা |
|---|---|
|
রোবটটি যেদিকে চলে: |
|
রোবটটি যে দূরত্ব অতিক্রম করে। এটি একটি পূর্ণসংখ্যা বা দশমিক সংখ্যা হতে পারে। |
|
ঐচ্ছিক। দূরত্বের একক: |
|
ঐচ্ছিক। |
# Build Used: Code Base 2.0
def main():
# Drive back and forth
drivetrain.drive_for(FORWARD, 100, MM)
drivetrain.drive_for(REVERSE, 4, INCHES)
# Start threads — Do not delete
start_thread(main)
drive_until#
drive_until রোবটটিকে ততক্ষণ পর্যন্ত সামনে এগিয়ে নিয়ে যায় যতক্ষণ না আই সেন্সর কোনো বস্তু শনাক্ত করে অথবা রোবটটি কোনো সংঘর্ষ শনাক্ত করে।
Usage:
drivetrain.drive_until(condition, wait)
প্যারামিটার |
বর্ণনা |
|---|---|
|
যে পরিস্থিতিতে রোবটটি থেমে যায়: |
|
ঐচ্ছিক। |
# Build Used: Code Base 2.0
def main():
# Turn right after a crash
drivetrain.drive_until(CRASH)
drivetrain.turn_for(RIGHT, 90)
# Start threads — Do not delete
start_thread(main)
turn#
turn রোবটটিকে অনির্দিষ্টকালের জন্য বামে বা ডানে ঘোরায়। রোবটটি ততক্ষণ ঘুরতে থাকবে যতক্ষণ না এটিকে অন্য কোনো কাজ দেওয়া হয়, যেমন চালানো বা থামানো।
Usage:
drivetrain.turn(direction)
প্যারামিটার |
বর্ণনা |
|---|---|
|
রোবটটি যেদিকে ঘোরে: |
# Build Used: Code Base 2.0
def main():
# Turn right and left, then stop
drivetrain.turn(RIGHT)
wait(2, SECONDS)
drivetrain.turn(LEFT)
wait(2, SECONDS)
drivetrain.stop()
# Start threads — Do not delete
start_thread(main)
turn_for#
turn_for রোবটটিকে একটি নির্দিষ্ট সংখ্যক ডিগ্রিতে বামে বা ডানে ঘোরায়। এই মোড়টি রোবটের বর্তমান অবস্থানের সাপেক্ষে হয়।
Usage:
drivetrain.turn_for(direction, angle, wait)
প্যারামিটার |
বর্ণনা |
|---|---|
|
রোবটটি যেদিকে ঘোরে: |
|
রোবটটি যত ডিগ্রি ঘোরে। এটি একটি পূর্ণসংখ্যা বা দশমিক সংখ্যা হতে পারে। |
|
ঐচ্ছিক। |
# Build Used: Code Base 2.0
def main():
# Turn right then left
drivetrain.turn_for(RIGHT, 90)
drivetrain.turn_for(LEFT, 90)
# Start threads — Do not delete
start_thread(main)
turn_to_heading#
হেডিং হলো রোবটের মস্তিষ্কের অভিমুখ, যা ডিগ্রিতে পরিমাপ করা হয়। turn_to_heading রোবটটিকে -359 থেকে 359 ডিগ্রির মধ্যে একটি নির্দিষ্ট হেডিং-এর দিকে ঘোরায়। রোবটটি লক্ষ্য হেডিং-এ পৌঁছানোর জন্য সবচেয়ে ছোট পথটি বেছে নেবে।
প্রারম্ভিক কোণ ০ ডিগ্রি।

Usage:
drivetrain.turn_to_heading(angle, wait)
প্যারামিটার |
বর্ণনা |
|---|---|
|
রোবটটির অভিমুখ একটি পূর্ণসংখ্যা হিসেবে প্রকাশ করতে হবে, যার মান -৩৫৯ থেকে ৩৫৯ ডিগ্রির মধ্যে হতে হবে। |
|
ঐচ্ছিক। |
# Build Used: Code Base 2.0
def main():
# Turn to face the cardinal directions
drivetrain.turn_to_heading(90)
wait(1, SECONDS)
drivetrain.turn_to_heading(180)
wait(1, SECONDS)
drivetrain.turn_to_heading(270)
wait(1, SECONDS)
drivetrain.turn_to_heading(0)
# Start threads — Do not delete
start_thread(main)
turn_to_rotation#
turn_to_rotation রোবটটিকে একটি নির্দিষ্ট ঘূর্ণনে ঘোরায়।
ঘূর্ণন হল রোবটের ঘুরে যাওয়ার পরিমাণ, যা ডিগ্রিতে পরিমাপ করা হয়। একটি প্রকল্পের শুরুতে, ঘূর্ণনের মান 0 ডিগ্রিতে সেট করা হয়। set_rotation ব্যবহার করেও ঘূর্ণন সেট করা যেতে পারে।
ঘূর্ণনের মান পরম। এর মানে হলো, মোড় নেওয়ার দিকটি রোবটের বর্তমান ঘূর্ণনের উপর নির্ভর করে। ডানদিকে ঘুরলে ঘূর্ণন বাড়ে এবং বামদিকে ঘুরলে ঘূর্ণন কমে।
উদাহরণস্বরূপ, যদি রোবটটি ০ ডিগ্রি থেকে শুরু করে এবং আপনি এটিকে ৭২০ ডিগ্রি ঘোরান, তবে এটি দুইবার ডানদিকে ঘুরবে। এরপর যদি আপনি এটিকে ৩৬০ ডিগ্রি ঘোরান, তবে এটি একবার বামদিকে ঘুরবে, কারণ ৩৬০ হলো ৭২০-এর চেয়ে কম।

Usage:
drivetrain.turn_to_rotation(angle, wait)
প্যারামিটার |
বর্ণনা |
|---|---|
|
রোবটটি যে ঘূর্ণন মানে (ডিগ্রিতে) ঘুরবে। এটি একটি পূর্ণসংখ্যা হতে পারে। |
|
ঐচ্ছিক। |
# Build Used: Code Base 2.0
def main():
# Make one full turn to the right
drivetrain.turn_to_rotation(360)
# Make another full turn to the right
drivetrain.turn_to_rotation(720)
# Make one full turn to the left, returning to 360 degrees
drivetrain.turn_to_rotation(360)
# Start threads — Do not delete
start_thread(main)
stop#
stop রোবটের চলাচল থামিয়ে দেয়।
Usage:
drivetrain.stop()
প্যারামিটার |
বর্ণনা |
|---|---|
এই পদ্ধতিতে কোনো প্যারামিটার নেই। |
# Build Used: Code Base 2.0
def main():
# Drive forward then stop
drivetrain.drive(FORWARD)
wait(2, SECONDS)
drivetrain.stop()
# Start threads — Do not delete
start_thread(main)
মিউটেটর#
set_drive_velocity#
set_drive_velocity রোবটকে বলে দেয় সে কত দ্রুত চলবে। উচ্চতর শতাংশ রোবটকে দ্রুত চালায় এবং নিম্নতর শতাংশ রোবটকে ধীরে চালায়।
প্রতিটি প্রকল্প ডিফল্টরূপে রোবটের ৫০% গতিতে চলার মাধ্যমে শুরু হয়।
দ্রষ্টব্য: উচ্চ বেগ রোবটকে দ্রুত চলতে সাহায্য করে, কিন্তু এর নির্ভুলতা কম হতে পারে। কম বেগ রোবটকে ধীরে চলতে সাহায্য করে, কিন্তু এটি আরও নির্ভুল হয়।
Usage:
drivetrain.set_drive_velocity(velocity)
প্যারামিটার |
বর্ণনা |
|---|---|
|
০% থেকে ১০০% পর্যন্ত চালনার গতি। |
# Build Used: Code Base 2.0
def main():
# Drive at different velocities
drivetrain.drive_for(FORWARD, 100, MM)
wait(1, SECONDS)
# Drive slow
drivetrain.set_drive_velocity(20)
drivetrain.drive_for(FORWARD, 100, MM)
wait(1, SECONDS)
# Drive fast
drivetrain.set_drive_velocity(100)
drivetrain.drive_for(FORWARD, 100, MM)
# Start threads — Do not delete
start_thread(main)
set_turn_velocity#
set_turn_velocity set_turn_velocity রোবটকে বলে দেয় সে কত দ্রুত ঘুরবে। উচ্চতর শতাংশ রোবটকে দ্রুত ঘোরায় এবং নিম্নতর শতাংশ রোবটকে ধীরে ঘোরায়।
প্রতিটি প্রকল্প ডিফল্টরূপে রোবটের ৫০% গতিতে ঘোরার মাধ্যমে শুরু হয়।
দ্রষ্টব্য: উচ্চ বেগ রোবটকে দ্রুত ঘোরাতে সাহায্য করে, কিন্তু এর নির্ভুলতা কম হতে পারে। কম বেগ রোবটকে ধীরে ঘোরাতে সাহায্য করে, কিন্তু এর নির্ভুলতা বেশি হয়।
Usage:
drivetrain.set_turn_velocity(velocity)
প্যারামিটার |
বর্ণনা |
|---|---|
|
০% থেকে ১০০% পর্যন্ত মোড় নেওয়ার বেগ। |
# Build Used: Code Base 2.0
def main():
# Turn at different velocities
drivetrain.turn_for(RIGHT, 180)
wait(1, SECONDS)
# Turn fast
drivetrain.set_turn_velocity(100)
drivetrain.turn_for(RIGHT, 180)
# Start threads — Do not delete
start_thread(main)
set_stopping#
set_stopping নির্ধারণ করে রোবটটি কীভাবে চলা বন্ধ করবে: ব্রেক করে, গতি না কমিয়ে, বা থেমে গিয়ে।
Usage:
drivetrain.set_stopping(brake)
প্যারামিটার |
বর্ণনা |
|---|---|
|
রোবটটি যেভাবে থামবে:
|
এই পদ্ধতি ব্যবহার না করা হলে, রোবটটি থামার সময় BRAKE ব্যবহার করবে।
# Build Used: Code Base 2.0
def main():
# Drive, then coast to a stop
drivetrain.set_drive_velocity(100)
drivetrain.set_stopping(COAST)
drivetrain.drive(FORWARD)
wait(2, SECONDS)
drivetrain.stop()
# Start threads — Do not delete
start_thread(main)
set_timeout#
set_timeout নির্ধারণ করে যে রোবট একটি মুভমেন্ট শেষ করার জন্য কতক্ষণ চেষ্টা করবে। যদি রোবট সেই সময়ের মধ্যে কাজটি শেষ করতে না পারে, তবে এটি চেষ্টা করা বন্ধ করে দেবে এবং কোডের পরবর্তী লাইনে চলে যাবে। এটি রোবটকে কোনো একটি মুভমেন্টে আটকে যাওয়া থেকে রক্ষা করে।
Usage:
drivetrain.set_timeout(value, units)
প্যারামিটার |
বর্ণনা |
|---|---|
|
একটি নড়াচড়া শেষ করার জন্য রোবটটি যে পরিমাণ সময় চেষ্টা করতে পারে। এটি একটি পূর্ণ সংখ্যা বা দশমিক সংখ্যা হতে পারে। |
|
ঐচ্ছিক। সময়ের একক: |
# Build Used: Code Base 2.0
def main():
# Drive as far as possible for 1 second before turning right
drivetrain.set_timeout(1, SECONDS)
drivetrain.drive_for(FORWARD, 25, INCHES)
drivetrain.turn_for(RIGHT, 90)
# Start threads — Do not delete
start_thread(main)
set_heading#
হেডিং হলো রোবটের মস্তিষ্কের অভিমুখ, যা ডিগ্রিতে পরিমাপ করা হয়। set_heading রোবটের বর্তমান হেডিংকে একটি নতুন হেডিং মানে পরিবর্তন করে।
উদাহরণস্বরূপ, যদি রোবটটি ডানদিকে মুখ করে থাকে, তবে হেডিং ০ ডিগ্রিতে সেট করলে সেই ডানমুখী অবস্থানটিই নতুন ০ ডিগ্রি হয়ে যায়। এরপর রোবটটি সেই নতুন হেডিং-এর উপর ভিত্তি করে অন্যান্য অবস্থানে ঘুরতে পারে।
Usage:
drivetrain.set_heading(value)
প্যারামিটার |
বর্ণনা |
|---|---|
|
রোবটের জন্য যে হেডিং ভ্যালুটি ডিগ্রিতে সেট করতে হবে। এটি ০ থেকে ৩৫৯ পর্যন্ত একটি পূর্ণ সংখ্যা হতে পারে। |
# Build Used: Code Base 2.0
def main():
# Face the new 0 degree heading
drivetrain.set_heading(90)
drivetrain.turn_to_heading(0)
# Start threads — Do not delete
start_thread(main)
set_rotation#
রোবটটি কতটা ঘুরেছে, তাকেই রোটেশন বলা হয়, যা ডিগ্রিতে পরিমাপ করা হয়। একটি প্রোজেক্টের শুরুতে, রোটেশনের মান ০ ডিগ্রিতে সেট করা থাকে। set_rotation রোবটের বর্তমান রোটেশনকে একটি নতুন মানে পরিবর্তন করে।
উদাহরণস্বরূপ, যদি রোবটটি ডানদিকে দুটি পূর্ণ পাক ঘুরে থাকে, তবে এর ঘূর্ণন মান হবে ৭২০ ডিগ্রি। ঘূর্ণন মান ০ ডিগ্রিতে সেট করলে তা ৭২০ থেকে ০ ডিগ্রিতে রিসেট হয়ে যাবে। এরপর রোবটটি সেই নতুন মানের উপর ভিত্তি করে ঘুরতে পারবে।
Usage:
drivetrain.set_rotation(value)
প্যারামিটার |
বর্ণনা |
|---|---|
|
রোবটের জন্য ঘূর্ণনের মান, ডিগ্রিতে, নির্ধারণ করতে হবে। এটি একটি পূর্ণসংখ্যা হতে পারে। |
# Build Used: Code Base 2.0
def main():
# Spin counterclockwise two times
drivetrain.set_rotation(720)
drivetrain.turn_to_rotation(0)
# Start threads — Do not delete
start_thread(main)
গেটার্স#
get_heading#
হেডিং হলো রোবটের মস্তিষ্কের অভিমুখ, যা ডিগ্রিতে পরিমাপ করা হয়। get_heading কমান্ডটি ০ থেকে ৩৫৯ ডিগ্রির মধ্যে সেই হেডিংটি ফেরত দেয়।
রোবটটির প্রারম্ভিক অভিমুখ ০ ডিগ্রি।

Usage:
drivetrain.get_heading()
প্যারামিটার |
বর্ণনা |
|---|---|
এই পদ্ধতিতে কোনো প্যারামিটার নেই। |
# Build Used: Code Base 2.0
def main():
# Display the heading while turning
monitor_sensor("drivetrain.get_heading")
drivetrain.turn_for(RIGHT, 450)
# Start threads — Do not delete
start_thread(main)
get_rotation#
রোবটটি কতটা ঘুরেছে, তা-ই হলো রোটেশন, যা ডিগ্রিতে পরিমাপ করা হয়। একটি প্রোজেক্টের শুরুতে, রোটেশনের মান ০ ডিগ্রিতে সেট করা থাকে। get_rotation রোবটটির বর্তমান রোটেশন ফেরত দেয়।
ডানদিকে ঘুরলে ঘূর্ণন বাড়ে এবং বামদিকে ঘুরলে ঘূর্ণন কমে। উদাহরণস্বরূপ, ডানদিকে দুটি পূর্ণ পাক দিলে ৭২০ ডিগ্রি ঘূর্ণন ঘটবে।

Usage:
drivetrain.get_rotation()
প্যারামিটার |
বর্ণনা |
|---|---|
এই পদ্ধতিতে কোনো প্যারামিটার নেই। |
# Build Used: Code Base 2.0
def main():
# Display the rotation while turning
monitor_sensor("drivetrain.get_rotation")
drivetrain.turn_for(RIGHT, 450)
# Start threads — Do not delete
start_thread(main)
get_velocity#
get_velocity রোবটটি কত দ্রুত চলছে তা ফেরত দেয়, যা -100% থেকে 100% পর্যন্ত শতাংশ হিসাবে প্রকাশ করা হয়।
ধনাত্মক মান মানে রোবটটি সামনের দিকে চলছে। ঋণাত্মক মান মানে রোবটটি পেছনের দিকে চলছে।
Usage:
drivetrain.get_velocity()
প্যারামিটার |
বর্ণনা |
|---|---|
এই পদ্ধতিতে কোনো প্যারামিটার নেই। |
# Build Used: Code Base 2.0
def main():
# Display the velocity of the robot before and while moving
console.print("Start: ")
console.print(drivetrain.get_velocity())
console.new_line()
drivetrain.drive(FORWARD)
wait(0.5, SECONDS)
console.print("Moving: ")
console.print(drivetrain.get_velocity())
drivetrain.stop()
# Start threads — Do not delete
start_thread(main)
get_yaw#
ইয়ো হলো রোবটটি তার শুরুর অবস্থান থেকে কতটা বামে বা ডানে ঘুরেছে, যা ডিগ্রিতে পরিমাপ করা হয়। get_yaw রোবটটির বর্তমান ইয়ো মান ফেরত দেয়।
ডানে ঘুরলে ইয়ো ভ্যালু বাড়ে এবং বামে ঘুরলে ইয়ো ভ্যালু কমে।
Usage:
drivetrain.get_yaw()
প্যারামিটার |
বর্ণনা |
|---|---|
এই পদ্ধতিতে কোনো প্যারামিটার নেই। |
# Build Used: Super Code Base 2.0
def main():
# Change the LED color based on the yaw while
# moving the robot by hand
monitor_sensor("drivetrain.get_yaw")
while True:
if drivetrain.get_yaw() > 0:
bumper.set_color(GREEN)
elif drivetrain.get_yaw() < 0:
bumper.set_color(RED)
else:
bumper.set_color(NONE)
# Start threads — Do not delete
start_thread(main)
get_roll#
রোল হলো রোবটটি কতটা বামে বা ডানে হেলে পড়ে, যা ডিগ্রিতে পরিমাপ করা হয়। get_roll রোবটটির বর্তমান রোলের মান ফেরত দেয়।
মস্তিষ্ক সামনের দিকে মুখ করে থাকলে, বাম দিকে কাত করলে রোলের মান বাড়ে এবং ডান দিকে কাত করলে রোলের মান কমে।
Usage:
drivetrain.get_roll()
প্যারামিটার |
বর্ণনা |
|---|---|
এই পদ্ধতিতে কোনো প্যারামিটার নেই। |
# Build Used: Super Code Base 2.0
def main():
# Change the LED color based on the roll while
# moving the robot by hand
monitor_sensor("drivetrain.get_roll")
while True:
if drivetrain.get_roll() > 0:
bumper.set_color(GREEN)
elif drivetrain.get_roll() < 0:
bumper.set_color(RED)
else:
bumper.set_color(NONE)
# Start threads — Do not delete
start_thread(main)
get_pitch#
পিচ হলো রোবটটি কতটা সামনে বা পেছনে হেলে পড়ে, যা ডিগ্রিতে পরিমাপ করা হয়। get_pitch রোবটটির বর্তমান পিচ মান ফেরত দেয়।
মস্তিষ্ক সামনের দিকে মুখ করে থাকলে, সামনের দিকে ঝুঁকালে তীক্ষ্ণতার মান বাড়ে এবং পেছনের দিকে ঝুঁকালে তীক্ষ্ণতার মান কমে।
Usage:
drivetrain.get_pitch()
প্যারামিটার |
বর্ণনা |
|---|---|
এই পদ্ধতিতে কোনো প্যারামিটার নেই। |
# Build Used: Super Code Base 2.0
def main():
# Change the LED color based on the pitch while
# moving the robot by hand
monitor_sensor("drivetrain.get_pitch")
while True:
if drivetrain.get_pitch() > 0:
bumper.set_color(GREEN)
elif drivetrain.get_pitch() < 0:
bumper.set_color(RED)
else:
bumper.set_color(NONE)
# Start threads — Do not delete
start_thread(main)
get_crashed#
get_crashed রোবটটি কোনো দুর্ঘটনা শনাক্ত করেছে কিনা, তা একটি বুলিয়ান মান হিসেবে ফেরত দেয়।
True— একটি ক্র্যাশ শনাক্ত করা হয়েছে।False— কোনো দুর্ঘটনা শনাক্ত করা হয়নি।
Usage:
drivetrain.get_crashed()
প্যারামিটার |
বর্ণনা |
|---|---|
এই পদ্ধতিতে কোনো প্যারামিটার নেই। |
# Build Used: Super Code Base 2.0
def main():
# Drive until a crash
drivetrain.drive(FORWARD)
while not drivetrain.get_crashed():
wait(50, MSEC)
drivetrain.stop()
drivetrain.turn_for(RIGHT, 90)
# Start threads — Do not delete
start_thread(main)
is_stopped#
is_stopped একটি বুলিয়ান মান হিসাবে ফেরত দেয় যে রোবটটির চলাচল শেষ হয়েছে কিনা। রোবটের চলাচলের উপর ভিত্তি করে অন্যান্য আচরণের সময় নিয়ন্ত্রণ করতে এটি ব্যবহার করা যেতে পারে।
True— রোবটটির চলাচল শেষ হয়েছে।False— রোবটটি এখনও চলছে।
এই পদ্ধতিটি নিম্নলিখিত ড্রাইভট্রেন পদ্ধতিগুলির সাথে একত্রে কাজ করে যেগুলিতে wait প্যারামিটার রয়েছে: drive_for, drive_until, turn_for, turn_to_heading, এবং turn_to_rotation।
Usage:
drivetrain.is_stopped()
প্যারামিটার |
বর্ণনা |
|---|---|
এই পদ্ধতিতে কোনো প্যারামিটার নেই। |
# Build Used: Code Base 2.0
def main():
# Turn when the drivetrain is done moving forward
drivetrain.drive_for(FORWARD, 100, MM, wait=False)
wait(0.25, SECONDS)
while True:
if drivetrain.is_stopped():
drivetrain.turn_for(RIGHT, 180)
break
else:
console.print("Still moving...")
wait(0.1, SECONDS)
console.clear()
# Start threads — Do not delete
start_thread(main)