├── .gitignore
├── .readthedocs.yaml
├── LICENSE
├── README.md
├── backup
└── i2samp.sh
├── docs
├── Makefile
├── make.bat
├── requirements.txt
└── source
│ ├── _templates
│ └── layout.html
│ ├── api.rst
│ ├── api_adc.rst
│ ├── api_basic_class.rst
│ ├── api_filedb.rst
│ ├── api_i2c.rst
│ ├── api_modules.rst
│ ├── api_motor.rst
│ ├── api_music.rst
│ ├── api_pin.rst
│ ├── api_pwm.rst
│ ├── api_robot.rst
│ ├── api_servo.rst
│ ├── api_tts.rst
│ ├── api_utils.rst
│ ├── battery.rst
│ ├── community_tutorials.rst
│ ├── conf.py
│ ├── faq.rst
│ ├── features.rst
│ ├── hardware_introduction.rst
│ ├── img
│ ├── 3d33.png
│ ├── 3pin_battery.jpg
│ ├── adcpin.png
│ ├── battery.png
│ ├── browser_camera.jpg
│ ├── btradc.png
│ ├── camera.jpg
│ ├── digitalio.png
│ ├── diy_car.jpg
│ ├── dowload_code.png
│ ├── i2cpin.png
│ ├── install_i2s1.png
│ ├── install_i2s2.png
│ ├── install_i2s3.png
│ ├── photoresistor.jpg
│ ├── plant_monitor.jpg
│ ├── pwmpin.png
│ ├── robot_hat.jpg
│ ├── robot_hat_pic.png
│ ├── robot_hat_pinout.png
│ ├── servo_motor.jpg
│ ├── spipin.png
│ ├── uartpin.png
│ └── ultrasonic.jpg
│ ├── index.rst
│ ├── install_i2s_for_speaker.rst
│ ├── installation.rst
│ ├── locale
│ ├── de
│ │ └── LC_MESSAGES
│ │ │ ├── api.po
│ │ │ ├── api_adc.po
│ │ │ ├── api_basic_class.po
│ │ │ ├── api_filedb.po
│ │ │ ├── api_i2c.po
│ │ │ ├── api_modules.po
│ │ │ ├── api_motor.po
│ │ │ ├── api_music.po
│ │ │ ├── api_pin.po
│ │ │ ├── api_pwm.po
│ │ │ ├── api_robot.po
│ │ │ ├── api_servo.po
│ │ │ ├── api_tts.po
│ │ │ ├── api_utils.po
│ │ │ ├── battery.po
│ │ │ ├── community_tutorials.po
│ │ │ ├── faq.po
│ │ │ ├── features.po
│ │ │ ├── hardware_introduction.po
│ │ │ ├── index.po
│ │ │ ├── install_i2s_for_speaker.po
│ │ │ ├── installation.po
│ │ │ ├── onboard_mcu.po
│ │ │ ├── project_control_motor_servo.po
│ │ │ ├── project_diy_car.po
│ │ │ ├── project_photoresistor.po
│ │ │ ├── project_plant_monitor.po
│ │ │ ├── project_say_something.po
│ │ │ ├── project_security.po
│ │ │ ├── project_ultrasonic.po
│ │ │ └── projects.po
│ └── ja
│ │ └── LC_MESSAGES
│ │ ├── api.po
│ │ ├── api_adc.po
│ │ ├── api_basic_class.po
│ │ ├── api_filedb.po
│ │ ├── api_i2c.po
│ │ ├── api_modules.po
│ │ ├── api_motor.po
│ │ ├── api_music.po
│ │ ├── api_pin.po
│ │ ├── api_pwm.po
│ │ ├── api_robot.po
│ │ ├── api_servo.po
│ │ ├── api_tts.po
│ │ ├── api_utils.po
│ │ ├── battery.po
│ │ ├── community_tutorials.po
│ │ ├── faq.po
│ │ ├── features.po
│ │ ├── hardware_introduction.po
│ │ ├── index.po
│ │ ├── install_i2s_for_speaker.po
│ │ ├── installation.po
│ │ ├── onboard_mcu.po
│ │ ├── project_control_motor_servo.po
│ │ ├── project_diy_car.po
│ │ ├── project_photoresistor.po
│ │ ├── project_plant_monitor.po
│ │ ├── project_say_something.po
│ │ ├── project_security.po
│ │ ├── project_ultrasonic.po
│ │ └── projects.po
│ ├── onboard_mcu.rst
│ ├── project_control_motor_servo.rst
│ ├── project_diy_car.rst
│ ├── project_photoresistor.rst
│ ├── project_plant_monitor.rst
│ ├── project_say_something.rst
│ ├── project_security.rst
│ ├── project_ultrasonic.rst
│ └── projects.rst
├── dtoverlays
├── sunfounder-robothat5.dtbo
└── sunfounder-servohat+.dtbo
├── i2samp.sh
├── install.py
├── pyproject.toml
├── robot_hat
├── __init__.py
├── adc.py
├── basic.py
├── config.py
├── device.py
├── filedb.py
├── i2c.py
├── modules.py
├── motor.py
├── music.py
├── pin.py
├── pwm.py
├── robot.py
├── servo.py
├── tts.py
├── utils.py
└── version.py
├── setup.py
└── tests
├── button_event_test.py
├── init_angles_test.py
├── motor_robothat5_test.py
├── motor_test.py
├── servo_hat_test.py
├── servo_test.py
└── tone_test.py
/.gitignore:
--------------------------------------------------------------------------------
1 | .vscode/*
2 | .DS_store
3 | docs/build
4 | __pycache__
5 | bk/
6 |
--------------------------------------------------------------------------------
/.readthedocs.yaml:
--------------------------------------------------------------------------------
1 | # .readthedocs.yaml
2 | # Read the Docs configuration file
3 | # See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
4 |
5 | # Required
6 | version: 2
7 |
8 | # Set the OS, Python version and other tools you might need
9 | build:
10 | os: ubuntu-22.04
11 | tools:
12 | python: "3.11"
13 | # You can also specify other tool versions:
14 | # nodejs: "19"
15 | # rust: "1.64"
16 | # golang: "1.19"
17 |
18 | # Build documentation in the "docs/" directory with Sphinx
19 | sphinx:
20 | configuration: docs/source/conf.py
21 |
22 | # Optionally build your docs in additional formats such as PDF and ePub
23 | # Build all formats
24 | formats: all
25 |
26 | # Optional but recommended, declare the Python requirements required
27 | # to build your documentation
28 | # See https://docs.readthedocs.io/en/stable/guides/reproducible-builds.html
29 | python:
30 | install:
31 | - requirements: docs/requirements.txt
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Robot Hat
2 |
3 | Robot Hat Python library for Raspberry Pi.
4 |
5 | Quick Links:
6 |
7 | - [Robot Hat](#robot-hat)
8 | - [About Robot Hat](#about-robot-hat)
9 | - [Update](#update)
10 | - [Installation](#installation)
11 | - [Trouble Shooting](#trouble-shooting)
12 | - [About SunFounder](#about-sunfounder)
13 | - [License](#license)
14 | - [Contact us](#contact-us)
15 |
16 | ## About Robot Hat
17 |
18 | Robot HAT is a multifunctional expansion board that allows Raspberry Pi to be quickly turned into a robot. An MCU is on board to extend the PWM output and ADC input for the Raspberry Pi, as well as a motor driver chip, Bluetooth module, I2S audio module and mono speaker. As well as the GPIOs that lead out of the Raspberry Pi itself.
19 |
20 |
21 | ## Update
22 | 2023-11-29:
23 | - Add more about Robot HAT's Hardware Introduction
24 |
25 |
26 | 2022-08-26:
27 | - New Release
28 |
29 | ## Installation
30 |
31 | ```bash
32 | git clone https://github.com/sunfounder/robot-hat.git -b v2.0
33 | cd robot-hat
34 | sudo python3 setup.py install
35 |
36 | ```
37 |
38 | ## Trouble Shooting
39 |
40 | ----------------------------------------------
41 |
42 | ## About SunFounder
43 |
44 | SunFounder is a technology company focused on Raspberry Pi and Arduino open source community development. Committed to the promotion of open source culture, we strives to bring the fun of electronics making to people all around the world and enable everyone to be a maker. Our products include learning kits, development boards, robots, sensor modules and development tools. In addition to high quality products, SunFounder also offers video tutorials to help you make your own project. If you have interest in open source or making something cool, welcome to join us!
45 |
46 | ----------------------------------------------
47 |
48 | ## License
49 |
50 | This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
51 |
52 | This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied wa rranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
53 |
54 | You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
55 |
56 | {Repository Name} comes with ABSOLUTELY NO WARRANTY; for details run ./show w. This is free software, and you are welcome to redistribute it under certain conditions; run ./show c for details.
57 |
58 | SunFounder, Inc., hereby disclaims all copyright interest in the program '{Repository Name}' (which makes passes at compilers).
59 |
60 | Mike Huang, 21 August 2015
61 |
62 | Mike Huang, Chief Executive Officer
63 |
64 | Email: service@sunfounder.com, support@sunfounder.com
65 |
66 | ----------------------------------------------
67 |
68 | ## Contact us
69 |
70 | website:
71 | www.sunfounder.com
72 |
73 | E-mail:
74 | service@sunfounder.com, support@sunfounder.com
75 |
--------------------------------------------------------------------------------
/docs/Makefile:
--------------------------------------------------------------------------------
1 | # Minimal makefile for Sphinx documentation
2 | #
3 |
4 | # You can set these variables from the command line, and also
5 | # from the environment for the first two.
6 | SPHINXOPTS ?=
7 | SPHINXBUILD ?= sphinx-build
8 | SOURCEDIR = source
9 | BUILDDIR = build
10 |
11 | # Put it first so that "make" without argument is like "make help".
12 | help:
13 | @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
14 |
15 | .PHONY: help Makefile
16 |
17 | # Catch-all target: route all unknown targets to Sphinx using the new
18 | # "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
19 | %: Makefile
20 | @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
21 |
--------------------------------------------------------------------------------
/docs/make.bat:
--------------------------------------------------------------------------------
1 | @ECHO OFF
2 |
3 | pushd %~dp0
4 |
5 | REM Command file for Sphinx documentation
6 |
7 | if "%SPHINXBUILD%" == "" (
8 | set SPHINXBUILD=sphinx-build
9 | )
10 | set SOURCEDIR=source
11 | set BUILDDIR=build
12 |
13 | if "%1" == "" goto help
14 |
15 | %SPHINXBUILD% >NUL 2>NUL
16 | if errorlevel 9009 (
17 | echo.
18 | echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
19 | echo.installed, then set the SPHINXBUILD environment variable to point
20 | echo.to the full path of the 'sphinx-build' executable. Alternatively you
21 | echo.may add the Sphinx directory to PATH.
22 | echo.
23 | echo.If you don't have Sphinx installed, grab it from
24 | echo.http://sphinx-doc.org/
25 | exit /b 1
26 | )
27 |
28 | %SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
29 | goto end
30 |
31 | :help
32 | %SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
33 |
34 | :end
35 | popd
36 |
--------------------------------------------------------------------------------
/docs/requirements.txt:
--------------------------------------------------------------------------------
1 | # Defining the exact version will make sure things don't break
2 | sphinx==7.3.7
3 | sphinx_rtd_theme==3.0.1
4 | sphinx_copybutton
5 | sphinx_toolbox
6 |
--------------------------------------------------------------------------------
/docs/source/_templates/layout.html:
--------------------------------------------------------------------------------
1 | {%- extends "!layout.html" %}
2 |
3 | {% block extrabody %}
4 |
13 | {% endblock %}
--------------------------------------------------------------------------------
/docs/source/api.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | Reference
16 | ==========================
17 |
18 | .. automodule:: robot_hat
19 |
20 | .. toctree::
21 | :maxdepth: 2
22 |
23 | api_pin
24 | api_adc
25 | api_pwm
26 | api_servo
27 | api_motor
28 | api_modules
29 | api_robot
30 | api_music
31 | api_tts
32 | api_utils
33 | api_filedb
34 | api_i2c
35 | api_basic_class
36 |
37 |
38 |
39 |
--------------------------------------------------------------------------------
/docs/source/api_adc.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | .. _class_adc:
16 |
17 | class ``ADC``
18 | =========================================
19 |
20 | **Example**
21 |
22 | .. code-block:: python
23 |
24 | # Import ADC class
25 | from robot_hat import ADC
26 |
27 | # Create ADC object with numeric pin numbering
28 | a0 = ADC(0)
29 | # Create ADC object with named pin numbering
30 | a1 = ADC('A1')
31 |
32 | # Read ADC value
33 | value0 = a0.read()
34 | value1 = a1.read()
35 | voltage0 = a0.read_voltage()
36 | voltage1 = a1.read_voltage()
37 | print(f"ADC 0 value: {value0}")
38 | print(f"ADC 1 value: {value1}")
39 | print(f"ADC 0 voltage: {voltage0}")
40 | print(f"ADC 1 voltage: {voltage1}")
41 |
42 | **API**
43 |
44 | .. currentmodule:: robot_hat
45 |
46 | .. autoclass:: ADC
47 | :show-inheritance:
48 | :special-members: __init__
49 | :members:
--------------------------------------------------------------------------------
/docs/source/api_basic_class.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | class ``_Basic_class``
16 | =========================================
17 |
18 | ``_Basic_class`` is a logger class for all class to log, so if you want to see
19 | logs of a class, just add a debug argument to it.
20 |
21 | **Example**
22 |
23 | .. code-block:: python
24 |
25 | # See PWM log
26 | from robot_hat import PWM
27 |
28 | # init the class with a debug argument
29 | pwm = PWM(0, debug_level="debug")
30 |
31 | # run some functions and see logs
32 | pwm.freq(1000)
33 | pwm.pulse_width_percent(100)
34 |
35 |
36 | **API**
37 |
38 | .. currentmodule:: robot_hat.basic
39 |
40 | .. autoclass:: _Basic_class
41 | :special-members: __init__
42 | :members:
--------------------------------------------------------------------------------
/docs/source/api_filedb.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | class ``FileDB``
16 | ======================
17 |
18 | **Example**
19 |
20 | .. code-block:: python
21 |
22 | # Import fileDB class
23 | from robot_hat import fileDB
24 |
25 | # Create fileDB object with a config file
26 | db = fileDB("./config")
27 |
28 | # Set some values
29 | db.set("apple", "10")
30 | db.set("orange", "5")
31 | db.set("banana", "13")
32 |
33 | # Read the values
34 | print(db.get("apple"))
35 | print(db.get("orange"))
36 | print(db.get("banana"))
37 |
38 | # Read an none existing value with a default value
39 | print(db.get("pineapple", default_value="-1"))
40 |
41 | Now you can checkout the config file ``config`` in bash.
42 |
43 | .. code-block:: bash
44 |
45 | cat config
46 |
47 | **API**
48 |
49 | .. currentmodule:: robot_hat
50 |
51 | .. autoclass:: fileDB
52 | :show-inheritance:
53 | :special-members: __init__
54 | :members:
55 |
--------------------------------------------------------------------------------
/docs/source/api_i2c.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | .. _class_i2c:
16 |
17 | class ``I2C``
18 | ========================================
19 |
20 | **Example**
21 |
22 | .. code-block:: python
23 |
24 | # Import the I2C class
25 | from robot_hat import I2C
26 |
27 | # You can scan for available I2C devices
28 | print([f"0x{addr:02X}" for addr in I2C().scan()])
29 | # You should see at least one device address 0x14, which is the
30 | # on board MCU for PWM and ADC
31 |
32 | # Initialize a I2C object with device address, for example
33 | # to communicate with on board MCU 0x14
34 | mcu = I2C(0x14)
35 | # Send ADC channel register to read ADC, 0x10 is Channel 0, 0x11 is Channel 1, etc.
36 | mcu.write([0x10, 0x00, 0x00])
37 | # Read 2 byte for MSB and LSB
38 | msb, lsb = mcu.read(2)
39 | # Convert to integer
40 | value = (msb << 8) + lsb
41 | # Print the value
42 | print(value)
43 |
44 | For more information on the I2C protocol, see checkout adc.py and pwm.py
45 |
46 | **API**
47 |
48 | .. currentmodule:: robot_hat
49 |
50 | .. autoclass:: I2C
51 | :show-inheritance:
52 | :special-members: __init__
53 | :members:
--------------------------------------------------------------------------------
/docs/source/api_motor.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | .. _class_motor:
16 |
17 | module ``motor``
18 | ========================================
19 |
20 | class ``Motors``
21 | ----------------------------------------
22 |
23 | **Example**
24 |
25 | Initilize
26 |
27 | .. code-block:: python
28 |
29 | # Import Motor class
30 | from robot_hat import Motors
31 |
32 | # Create Motor object
33 | motors = Motors()
34 |
35 | Directly control a motor. Motor 1/2 is according to PCB mark
36 |
37 | .. code-block:: python
38 |
39 | # Motor 1 clockwise at 100% speed
40 | motors[1].speed(100)
41 | # Motor 2 counter-clockwise at 100% speed
42 | motors[2].speed(-100)
43 | # Stop all motors
44 | motors.stop()
45 |
46 | Setup for high level control, high level control provides functions
47 | from simple forword, backward, left, right, stop to more complex
48 | like joystick control, motor directions calibration, etc.
49 |
50 | .. note::
51 | All these setup only need to run once, and will save in a config file. Next time you load Motors class, it will load from config file.
52 |
53 | .. code-block:: python
54 |
55 | # Setup left and right motors
56 | motors.set_left_id(1)
57 | motors.set_right_id(2)
58 | # Go forward and see if both motor directions are correct
59 | motors.forward(100)
60 | # if you found a motor is running in the wrong direction
61 | # Use these function to correct it
62 | motors.set_left_reverse()
63 | motors.set_right_reverse()
64 | # Run forward again and see if both motor directions are correct
65 | motors.forward(100)
66 |
67 | Now control the robot
68 |
69 | .. code-block:: python
70 |
71 | import time
72 |
73 | motors.forward(100)
74 | time.sleep(1)
75 | motors.backward(100)
76 | time.sleep(1)
77 | motors.turn_left(100)
78 | time.sleep(1)
79 | motors.turn_right(100)
80 | time.sleep(1)
81 | motors.stop()
82 |
83 | **API**
84 |
85 | .. currentmodule:: robot_hat
86 |
87 | .. autoclass:: Motors
88 | :show-inheritance:
89 | :special-members: __init__, __getitem__
90 | :members:
91 |
92 | class ``Motor``
93 | ----------------------------------------
94 |
95 | **Example**
96 |
97 | .. code-block:: python
98 |
99 | # Import Motor class
100 | from robot_hat import Motor, PWM, Pin
101 |
102 | # Create Motor object
103 | motor = Motor(PWM("P13"), Pin("D4"))
104 |
105 | # Motor clockwise at 100% speed
106 | motor.speed(100)
107 | # Motor counter-clockwise at 100% speed
108 | motor.speed(-100)
109 |
110 | # If you like to reverse the motor direction
111 | motor.set_is_reverse(True)
112 |
113 | **API**
114 |
115 | .. currentmodule:: robot_hat
116 |
117 | .. autoclass:: Motor
118 | :show-inheritance:
119 | :special-members: __init__
120 | :members:
121 |
--------------------------------------------------------------------------------
/docs/source/api_pin.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | .. _class_pin:
16 |
17 | class ``Pin``
18 | ===========================
19 |
20 | **Example**
21 |
22 | .. code-block:: python
23 |
24 | # Import Pin class
25 | from robot_hat import Pin
26 |
27 | # Create Pin object with numeric pin numbering and default input pullup enabled
28 | d0 = Pin(0, Pin.IN, Pin.PULL_UP)
29 | # Create Pin object with named pin numbering
30 | d1 = Pin('D1')
31 |
32 | # read value
33 | value0 = d0.value()
34 | value1 = d1.value()
35 | print(value0, value1)
36 |
37 | # write value
38 | d0.value(1) # force input to output
39 | d1.value(0)
40 |
41 | # set pin high/low
42 | d0.high()
43 | d1.off()
44 |
45 | # set interrupt
46 | led = Pin('LED', Pin.OUT)
47 | switch = Pin('SW', Pin.IN, Pin.PULL_DOWN)
48 | def onPressed(chn):
49 | led.value(not switch.value())
50 | switch.irq(handler=onPressed, trigger=Pin.IRQ_RISING_FALLING)
51 |
52 | **API**
53 |
54 | .. currentmodule:: robot_hat
55 |
56 | .. autoclass:: Pin
57 | :show-inheritance:
58 | :special-members: __init__, __call__
59 | :members:
--------------------------------------------------------------------------------
/docs/source/api_pwm.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | .. _class_pwm:
16 |
17 | class ``PWM``
18 | ========================================
19 |
20 | **Example**
21 |
22 | .. code-block:: python
23 |
24 | # Import PWM class
25 | from robot_hat import PWM
26 |
27 | # Create PWM object with numeric pin numbering and default input pullup enabled
28 | p0 = PWM(0)
29 | # Create PWM object with named pin numbering
30 | p1 = PWM('P1')
31 |
32 |
33 | # Set frequency will automatically set prescaller and period
34 | # This is easy for device like Buzzer or LED, which you care
35 | # about the frequency and pulse width percentage.
36 | # this usually use with pulse_width_percent function.
37 | # Set frequency to 1000Hz
38 | p0.freq(1000)
39 | print(f"Frequence: {p0.freq()} Hz")
40 | print(f"Prescaler: {p0.prescaler()}")
41 | print(f"Period: {p0.period()}")
42 | # Set pulse width to 50%
43 | p0.pulse_width_percent(50)
44 |
45 | # Or set prescaller and period, will get a frequency from:
46 | # frequency = PWM.CLOCK / prescaler / period
47 | # With this setup you can tune the period as you wish.
48 | # set prescaler to 64
49 | p1.prescaler(64)
50 | # set period to 4096 ticks
51 | p1.period(4096)
52 | print(f"Frequence: {p1.freq()} Hz")
53 | print(f"Prescaler: {p1.prescaler()}")
54 | print(f"Period: {p1.period()}")
55 | # Set pulse width to 2048 which is also 50%
56 | p1.pulse_width(2048)
57 |
58 | **API**
59 |
60 | .. currentmodule:: robot_hat
61 |
62 | .. autoclass:: PWM
63 | :show-inheritance:
64 | :special-members: __init__
65 | :members:
--------------------------------------------------------------------------------
/docs/source/api_robot.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | .. _class_robot:
16 |
17 | class ``Robot``
18 | ========================================
19 |
20 | **Example**
21 |
22 | .. code-block:: python
23 |
24 | # Import Robot class
25 | from robot import Robot
26 |
27 | # Create a robot(PiSloth)
28 | robot = Robot(pin_list=[0, 1, 2, 3], name="pisloth")
29 |
30 | robot.move_list["forward"] = [
31 | [0, 40, 0, 15],
32 | [-30, 40, -30, 15],
33 | [-30, 0, -30, 0],
34 |
35 | [0, -15, 0, -40],
36 | [30, -15, 30, -40],
37 | [30, 0, 30, 0],
38 | ]
39 |
40 | robot.do_action("forward", step=3, speed=90)
41 |
42 | **API**
43 |
44 | .. currentmodule:: robot_hat
45 |
46 | .. autoclass:: Robot
47 | :show-inheritance:
48 | :special-members: __init__
49 | :members:
--------------------------------------------------------------------------------
/docs/source/api_servo.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | .. _class_servo:
16 |
17 | class ``Servo``
18 | =============================
19 |
20 | **Example**
21 |
22 | .. code-block:: python
23 |
24 | # Import Servo class
25 | from robot_hat import Servo
26 |
27 | # Create Servo object with PWM object
28 | servo0 = Servo("P0")
29 |
30 | # Set servo to position 0, here 0 is the center position,
31 | # angle ranges from -90 to 90
32 | servo0.angle(0)
33 |
34 | # Sweep servo from 0 to 90 degrees, then 90 to -90 degrees, finally back to 0
35 | import time
36 | for i in range(0, 91):
37 | servo0.angle(i)
38 | time.sleep(0.05)
39 | for i in range(90, -91, -1):
40 | servo0.angle(i)
41 | time.sleep(0.05)
42 | for i in range(-90, 1):
43 | servo0.angle(i)
44 | time.sleep(0.05)
45 |
46 |
47 | # Servos are all controls with pulse width, some
48 | # from 500 ~ 2500 like most from SunFounder.
49 | # You can directly set the pulse width
50 |
51 | # Set servo to 1500 pulse width (-90 degree)
52 | servo0.pulse_width_time(500)
53 | # Set servo to 1500 pulse width (0 degree)
54 | servo0.pulse_width_time(1500)
55 | # Set servo to 1500 pulse width (90 degree)
56 | servo0.pulse_width_time(2500)
57 |
58 | **API**
59 |
60 | .. currentmodule:: robot_hat
61 |
62 | .. autoclass:: Servo
63 | :show-inheritance:
64 | :special-members: __init__
65 | :members:
--------------------------------------------------------------------------------
/docs/source/api_tts.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | .. _class_tts:
16 |
17 | class ``TTS``
18 | ==================================================
19 |
20 | .. warning::
21 | * You need to add ``sudo`` when running this script, in case the speaker doesn't work.
22 | * :ref:`faq_speaker`.
23 |
24 | **Example**
25 |
26 | .. code-block:: python
27 |
28 | # Import TTS class
29 | from robot_hat import TTS
30 |
31 | # Initialize TTS class
32 | tts = TTS(lang='en-US')
33 | # Speak text
34 | tts.say("Hello World")
35 | # show all supported languages
36 | print(tts.supported_lang())
37 |
38 |
39 | **API**
40 |
41 | .. currentmodule:: robot_hat
42 |
43 | .. autoclass:: TTS
44 | :show-inheritance:
45 | :special-members: __init__
46 | :members:
47 |
--------------------------------------------------------------------------------
/docs/source/api_utils.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | module ``utils``
16 | ==================================================
17 |
18 | .. automodule:: robot_hat.utils
19 | :members:
--------------------------------------------------------------------------------
/docs/source/battery.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | About the Battery
16 | ========================
17 | **Battery**
18 |
19 | .. image:: img/3pin_battery.jpg
20 | :width: 500
21 | :align: center
22 |
23 | * **VCC**: Battery positive terminal, here there are two sets of VCC and GND is to increase the current and reduce the resistance.
24 | * **Middle**: To balance the voltage between the two cells and thus protect the battery.
25 | * **GND**: Negative battery terminal.
26 |
27 |
28 | This is a custom battery pack made by SunFounder consisting of two 18650 batteries with a capacity of 2000mAh.
29 | The connector is XH2.54 3pin, which can be charged directly after being inserted into the shield.
30 |
31 |
32 | **Features**
33 |
34 | * Composition: Li-ion
35 | * Battery Capacity: 2000mAh, 14.8Wh
36 | * Battery Weight: 90.8g
37 | * Number of Cells: 2
38 | * Connector: XH2.54 3pin
39 | * Over-discharge protection: 6.0V
40 |
--------------------------------------------------------------------------------
/docs/source/community_tutorials.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | Community Tutorials
16 | =======================
17 |
18 | * |link_peppe8o|
19 |
20 | This document summarizes the SunFounder Raspberry Pi Robot HAT, covering its purpose, compatibility, specifications, and testing:
21 |
22 | * **Introduction**: Explains the Robot HAT's role in simplifying control for Raspberry Pi-based DIY robot projects.
23 | * **Specifications**: Details the technical specs, including power input, battery details, ports, and motor driver features.
24 | * **Ports Overview**: Describes various ports like Power, Digital, Analog, PWM, I2C, SPI, UART, and Motor Ports.
25 | * **Additional Components**: Highlights extra components like buttons, LED, and speaker, with Raspberry Pi PIN mappings.
26 | * **Setup and Testing**: Guides on mounting the Robot HAT, necessary components, and testing procedures for features like LED and servo motors.
27 |
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/docs/source/faq.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | FAQ
16 | ================
17 |
18 | Q1: Can the battery be connected while providing power to the Raspberry Pi at the same time?
19 | ------------------------------------------------------------------------------------------------------------
20 | A: Yes, the Robot HAT has a built-in anti-backflow diode that prevents the Raspberry Pi's power from flowing back into the Robot HAT.
21 |
22 | Q2: Can the Robot HAT be used while charging?
23 | --------------------------------------------------------
24 | A: Yes, the Robot HAT can be used while charging. When charging, the input power is boosted by the charging chip to charge the batteries, while also providing power to the DC-DC step-down for external use. The charging power is approximately 10W. If the external power consumption is too high for an extended period, the batteries may supplement the power, similar to how a mobile phone charges while in use. However, it is important to be mindful of the battery's capacity to avoid draining it completely during simultaneous charging and usage.
25 |
26 | .. _faq_speaker:
27 |
28 | Q3: Why is there no sound from the speaker?
29 | --------------------------------------------------
30 |
31 | When your script is running but the speaker is not producing sound, there could be several reasons:
32 |
33 | #. Check if the ``i2samp.sh`` script has been installed. For detailed instructions, please refer to: :ref:`install_i2s`.
34 | #. When running scripts related to speakers, it's necessary to add ``sudo`` to obtain administrative privileges. For example, ``sudo python3 tts.py``.
35 | #. Don't using Raspberry Pi's built-in programming tools, like Geany to run Speaker-related scripts. These tools run with standard user privileges, while hardware control, such as managing speakers, often requires higher permissions.
36 |
--------------------------------------------------------------------------------
/docs/source/features.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | Features
16 | ==============
17 |
18 | * Shutdown Current: < 0.5mA
19 | * Power Input: USB Type-C, 5V/2A
20 | * Charging Power: 5V/2A 10W
21 | * Output Power: 5V/3A
22 | * Included Batteries: 2 x 3.7V 18650 Lithium-ion Batteries, XH2.54 3P Interface
23 | * Battery Protection: Reverse polarity protection
24 | * Charging Protection: Input undervoltage protection, input overvoltage protection, charging balance, overheat protection
25 | * Onboard Charging Indicator Light: CHG
26 | * Onboard Power Indicator Light: PWR
27 | * Onboard 2 Battery Level Indicator LEDs
28 | * Onboard User LED, 2 tactile switches
29 | * Motor Driver: 5V/1.8A x 2
30 | * 4-channel 12-bit ADC
31 | * 12-channel PWM
32 | * 4-channel digital signals
33 | * Onboard SPI interface, UART interface, I2C interface
34 | * Mono Speaker: 8Ω1W
35 |
36 | .. list-table:: Electrical Characteristics
37 | :widths: 50 25 25 25 25
38 | :header-rows: 1
39 |
40 | * - Parameters:
41 | - Minimum Value:
42 | - Typical Value:
43 | - Maximum Value:
44 | - Unit:
45 | * - Input Voltage:
46 | - 4.25
47 | - 5
48 | - 8.4
49 | - V
50 | * - Battery Input Voltage:
51 | - 6.0
52 | - 7.4
53 | - 8.4
54 | - V
55 | * - Overcharge Protection (Battery):
56 | -
57 | - 8.3
58 | -
59 | - V
60 | * - Input Undervoltage Protection:
61 | - 4.15
62 | - 4.25
63 | - 4.35
64 | - V
65 | * - Input Overvoltage Protection:
66 | - 8.3
67 | - 8.4
68 | - 8.5
69 | - V
70 | * - Charging Current (5V):
71 | -
72 | -
73 | - 2.0
74 | - A
75 | * - Output Current (5V):
76 | -
77 | -
78 | - 3.0
79 | - A
80 | * - Output Voltage:
81 | - 5.166
82 | - 5.246
83 | - 5.327
84 | - V
85 | * - Charging Overheat Protection:
86 | - 125
87 | - 135
88 | - 145
89 | - °C
90 | * - DC-DC Overheat Protection:
91 | - 70
92 | - 75
93 | - 80
94 | - °C
95 | * - Motor Output Current:
96 | -
97 | -
98 | - 1.8
99 | - A
--------------------------------------------------------------------------------
/docs/source/img/3d33.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/docs/source/img/3d33.png
--------------------------------------------------------------------------------
/docs/source/img/3pin_battery.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/docs/source/img/3pin_battery.jpg
--------------------------------------------------------------------------------
/docs/source/img/adcpin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/docs/source/img/adcpin.png
--------------------------------------------------------------------------------
/docs/source/img/battery.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/docs/source/img/battery.png
--------------------------------------------------------------------------------
/docs/source/img/browser_camera.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/docs/source/img/browser_camera.jpg
--------------------------------------------------------------------------------
/docs/source/img/btradc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/docs/source/img/btradc.png
--------------------------------------------------------------------------------
/docs/source/img/camera.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/docs/source/img/camera.jpg
--------------------------------------------------------------------------------
/docs/source/img/digitalio.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/docs/source/img/digitalio.png
--------------------------------------------------------------------------------
/docs/source/img/diy_car.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/docs/source/img/diy_car.jpg
--------------------------------------------------------------------------------
/docs/source/img/dowload_code.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/docs/source/img/dowload_code.png
--------------------------------------------------------------------------------
/docs/source/img/i2cpin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/docs/source/img/i2cpin.png
--------------------------------------------------------------------------------
/docs/source/img/install_i2s1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/docs/source/img/install_i2s1.png
--------------------------------------------------------------------------------
/docs/source/img/install_i2s2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/docs/source/img/install_i2s2.png
--------------------------------------------------------------------------------
/docs/source/img/install_i2s3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/docs/source/img/install_i2s3.png
--------------------------------------------------------------------------------
/docs/source/img/photoresistor.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/docs/source/img/photoresistor.jpg
--------------------------------------------------------------------------------
/docs/source/img/plant_monitor.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/docs/source/img/plant_monitor.jpg
--------------------------------------------------------------------------------
/docs/source/img/pwmpin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/docs/source/img/pwmpin.png
--------------------------------------------------------------------------------
/docs/source/img/robot_hat.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/docs/source/img/robot_hat.jpg
--------------------------------------------------------------------------------
/docs/source/img/robot_hat_pic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/docs/source/img/robot_hat_pic.png
--------------------------------------------------------------------------------
/docs/source/img/robot_hat_pinout.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/docs/source/img/robot_hat_pinout.png
--------------------------------------------------------------------------------
/docs/source/img/servo_motor.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/docs/source/img/servo_motor.jpg
--------------------------------------------------------------------------------
/docs/source/img/spipin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/docs/source/img/spipin.png
--------------------------------------------------------------------------------
/docs/source/img/uartpin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/docs/source/img/uartpin.png
--------------------------------------------------------------------------------
/docs/source/img/ultrasonic.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/docs/source/img/ultrasonic.jpg
--------------------------------------------------------------------------------
/docs/source/index.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | SunFounder |link_Robot_HAT_kit|
16 | =====================================
17 |
18 | * |link_Robot_HAT|
19 |
20 | Thanks for choosing our |link_Robot_HAT_kit|.
21 |
22 | .. note::
23 | This document is available in the following languages.
24 |
25 | * |link_german_tutorials|
26 | * |link_jp_tutorials|
27 | * |link_en_tutorials|
28 |
29 | Please click on the respective links to access the document in your preferred language.
30 |
31 | .. image:: img/robot_hat_pic.png
32 | :width: 500
33 | :align: center
34 |
35 |
36 | Robot HAT is a multifunctional expansion board that allows Raspberry Pi to be quickly turned into a robot. An MCU is on board to extend the PWM output and ADC input for the Raspberry Pi, as well as a motor driver chip, Bluetooth module, I2S audio module and mono speaker. As well as the GPIOs that lead out of the Raspberry Pi itself.
37 |
38 | It also comes with a Speaker, which can be used to play background music, sound effects and implement TTS functions to make your project more interesting.
39 |
40 | Accepts 6.0V-8.4V XH2.54 3pin power input with 2 power indicators. The board also has a user available LED and a button for you to quickly test some effects.
41 |
42 | In this document, you will get a full understanding of the interface functions of the Robot HAT and the usage of these interfaces through the Python ``robot-hat`` library provided by SunFounder.
43 |
44 |
45 | .. toctree::
46 | :maxdepth: 3
47 |
48 | About this HAT
49 | features
50 | hardware_introduction
51 | battery
52 | installation
53 | install_i2s_for_speaker
54 | onboard_mcu
55 | api
56 | projects
57 | faq
58 |
--------------------------------------------------------------------------------
/docs/source/install_i2s_for_speaker.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | .. _install_i2s:
16 |
17 | Install ``i2samp.sh`` for the Speaker
18 | ==============================================
19 |
20 | The ``i2samp.sh`` is a sophisticated Bash script specifically designed for setting up and configuring an I2S (Inter-IC Sound) amplifier on Raspberry Pi and similar devices. Licensed under the MIT license, it ensures compatibility with a range of hardware and operating systems, conducting thorough checks before proceeding with any installation or configuration.
21 |
22 | If you want your speaker to work properly, you definitely need to install this script.
23 |
24 | The steps are as follows:
25 |
26 | .. code-block::
27 |
28 | cd ~/robot-hat
29 | sudo bash i2samp.sh
30 |
31 | Type ``y`` and press ``enter`` to continue running the script.
32 |
33 | .. image:: img/install_i2s1.png
34 |
35 | Type ``y`` and press ``enter`` to run ``/dev/zero`` in the background.
36 |
37 | .. image:: img/install_i2s2.png
38 |
39 | Type ``y`` and press ``enter`` to restart the Raspberry pi.
40 |
41 | .. image:: img/install_i2s2.png
42 |
43 | .. warning::
44 |
45 | If there is no sound after restarting, you may need to run the ``i2samp.sh`` script several times.
--------------------------------------------------------------------------------
/docs/source/installation.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | Install the ``robot-hat`` Module
16 | ==========================================
17 |
18 | ``robot-hat`` is the supported library for the Robot HAT.
19 |
20 | #. Update your system.
21 |
22 | Make sure you are connected to the Internet and update your system:
23 |
24 | .. raw:: html
25 |
26 |
27 |
28 | .. code-block::
29 |
30 | sudo apt update
31 | sudo apt upgrade
32 |
33 | .. note::
34 |
35 | Python3 related packages must be installed if you are installing the **Lite** version OS.
36 |
37 | .. raw:: html
38 |
39 |
40 |
41 | .. code-block::
42 |
43 | sudo apt install git python3-pip python3-setuptools python3-smbus
44 |
45 | #. Type this command into the terminal to install the ``robot-hat`` package.
46 |
47 | .. raw:: html
48 |
49 |
50 |
51 | .. code-block::
52 |
53 | cd ~/
54 | git clone -b v2.0 https://github.com/sunfounder/robot-hat.git
55 | cd robot-hat
56 | sudo python3 setup.py install
57 |
58 | .. note::
59 | Run ``setup.py`` to download some necessary components. You may have a network problem and the download may fail. At this point you may need to download again. In the following cases, type ``Y`` and press ``Enter`` to continue the process.
60 |
61 | .. image:: img/dowload_code.png
--------------------------------------------------------------------------------
/docs/source/locale/de/LC_MESSAGES/api.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-05-24 09:22+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: de\n"
15 | "Language-Team: de \n"
16 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.15.0\n"
21 |
22 | #: ../api.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr " Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten."
28 |
29 | #: ../api.rst:5
30 | msgid "**Why Join?**"
31 | msgstr " **Warum beitreten?**"
32 |
33 | #: ../api.rst:7
34 | msgid ""
35 | "**Expert Support**: Solve post-sale issues and technical challenges with "
36 | "help from our community and team."
37 | msgstr "**Expertenunterstützung**: Lösen Sie Nachverkaufsprobleme und technische Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams."
38 |
39 | #: ../api.rst:8
40 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
41 | msgstr "**Lernen & Teilen**: Tauschen Sie Tipps und Anleitungen aus, um Ihre Fähigkeiten zu verbessern."
42 |
43 | #: ../api.rst:9
44 | msgid ""
45 | "**Exclusive Previews**: Get early access to new product announcements and"
46 | " sneak peeks."
47 | msgstr "**Exklusive Vorschauen**: Erhalten Sie frühzeitigen Zugang zu neuen Produktankündigungen und exklusiven Einblicken."
48 |
49 | #: ../api.rst:10
50 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
51 | msgstr "**Spezialrabatte**: Genießen Sie exklusive Rabatte auf unsere neuesten Produkte."
52 |
53 | #: ../api.rst:11
54 | msgid ""
55 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
56 | "promotions."
57 | msgstr "**Festliche Aktionen und Gewinnspiele**: Nehmen Sie an Gewinnspielen und Feiertagsaktionen teil."
58 |
59 | #: ../api.rst:13
60 | msgid ""
61 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
62 | "join today!"
63 | msgstr "👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf [|link_sf_facebook|] und treten Sie heute bei!"
64 |
65 | #: ../api.rst:16
66 | msgid "Reference"
67 | msgstr "Referenz"
68 |
69 | #: of robot_hat:1
70 | msgid "Robot Hat Library"
71 | msgstr "Robot Hat Bibliothek"
72 |
73 |
--------------------------------------------------------------------------------
/docs/source/locale/de/LC_MESSAGES/api_adc.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2024, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2024.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-07-12 18:01+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: de\n"
15 | "Language-Team: de \n"
16 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.12.1\n"
21 |
22 | #: ../api_adc.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr ""
28 | " Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32"
29 | " Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die "
30 | "Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten."
31 |
32 | #: ../api_adc.rst:5
33 | msgid "**Why Join?**"
34 | msgstr " **Warum beitreten?**"
35 |
36 | #: ../api_adc.rst:7
37 | msgid ""
38 | "**Expert Support**: Solve post-sale issues and technical challenges with "
39 | "help from our community and team."
40 | msgstr ""
41 | "**Expertenunterstützung**: Lösen Sie Nachverkaufsprobleme und technische "
42 | "Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams."
43 |
44 | #: ../api_adc.rst:8
45 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
46 | msgstr ""
47 | "**Lernen & Teilen**: Tauschen Sie Tipps und Anleitungen aus, um Ihre "
48 | "Fähigkeiten zu verbessern."
49 |
50 | #: ../api_adc.rst:9
51 | msgid ""
52 | "**Exclusive Previews**: Get early access to new product announcements and"
53 | " sneak peeks."
54 | msgstr ""
55 | "**Exklusive Vorschauen**: Erhalten Sie frühzeitigen Zugang zu neuen "
56 | "Produktankündigungen und exklusiven Einblicken."
57 |
58 | #: ../api_adc.rst:10
59 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
60 | msgstr ""
61 | "**Spezialrabatte**: Genießen Sie exklusive Rabatte auf unsere neuesten "
62 | "Produkte."
63 |
64 | #: ../api_adc.rst:11
65 | msgid ""
66 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
67 | "promotions."
68 | msgstr ""
69 | "**Festliche Aktionen und Gewinnspiele**: Nehmen Sie an Gewinnspielen und "
70 | "Feiertagsaktionen teil."
71 |
72 | #: ../api_adc.rst:13
73 | msgid ""
74 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
75 | "join today!"
76 | msgstr ""
77 | "👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf"
78 | " [|link_sf_facebook|] und treten Sie heute bei!"
79 |
80 | #: ../api_adc.rst:18
81 | msgid "class ``ADC``"
82 | msgstr "Klasse ``ADC``"
83 |
84 | #: ../api_adc.rst:20
85 | msgid "**Example**"
86 | msgstr "**Beispiel**"
87 |
88 | #: ../api_adc.rst:42
89 | msgid "**API**"
90 | msgstr "**API**"
91 |
92 | #: of robot_hat.adc.ADC:1
93 | msgid "Bases: :py:class:`~robot_hat.i2c.I2C`"
94 | msgstr "Basisklasse: :py:class:`~robot_hat.i2c.I2C`"
95 |
96 | #: of robot_hat.adc.ADC:1 robot_hat.adc.ADC.__init__:1
97 | msgid "Analog to digital converter"
98 | msgstr "Analog-Digital-Wandler"
99 |
100 | #: of robot_hat.adc.ADC.__init__
101 | msgid "Parameters"
102 | msgstr "Parameter"
103 |
104 | #: of robot_hat.adc.ADC.__init__:3
105 | msgid "channel number (0-7/A0-A7)"
106 | msgstr "Kanalnummer (0-7/A0-A7)"
107 |
108 | #: of robot_hat.adc.ADC.read:1
109 | msgid "Read the ADC value"
110 | msgstr "ADC-Wert lesen"
111 |
112 | #: of robot_hat.adc.ADC.read robot_hat.adc.ADC.read_voltage
113 | msgid "Returns"
114 | msgstr "Rückgabewert"
115 |
116 | #: of robot_hat.adc.ADC.read:3
117 | msgid "ADC value(0-4095)"
118 | msgstr "ADC-Wert (0-4095)"
119 |
120 | #: of robot_hat.adc.ADC.read robot_hat.adc.ADC.read_voltage
121 | msgid "Return type"
122 | msgstr "Rückgabetyp"
123 |
124 | #: of robot_hat.adc.ADC.read_voltage:1
125 | msgid "Read the ADC value and convert to voltage"
126 | msgstr "ADC-Wert lesen und in Spannung umwandeln"
127 |
128 | #: of robot_hat.adc.ADC.read_voltage:3
129 | msgid "Voltage value(0-3.3(V))"
130 | msgstr "Spannungswert (0-3.3(V))"
131 |
132 |
--------------------------------------------------------------------------------
/docs/source/locale/de/LC_MESSAGES/api_basic_class.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2024, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2024.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-07-12 18:01+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: de\n"
15 | "Language-Team: de \n"
16 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.12.1\n"
21 |
22 | #: ../api_basic_class.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr ""
28 | " Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32"
29 | " Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die "
30 | "Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten."
31 |
32 | #: ../api_basic_class.rst:5
33 | msgid "**Why Join?**"
34 | msgstr " **Warum beitreten?**"
35 |
36 | #: ../api_basic_class.rst:7
37 | msgid ""
38 | "**Expert Support**: Solve post-sale issues and technical challenges with "
39 | "help from our community and team."
40 | msgstr ""
41 | "**Expertenunterstützung**: Lösen Sie Nachverkaufsprobleme und technische "
42 | "Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams."
43 |
44 | #: ../api_basic_class.rst:8
45 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
46 | msgstr ""
47 | "**Lernen & Teilen**: Tauschen Sie Tipps und Anleitungen aus, um Ihre "
48 | "Fähigkeiten zu verbessern."
49 |
50 | #: ../api_basic_class.rst:9
51 | msgid ""
52 | "**Exclusive Previews**: Get early access to new product announcements and"
53 | " sneak peeks."
54 | msgstr ""
55 | "**Exklusive Vorschauen**: Erhalten Sie frühzeitigen Zugang zu neuen "
56 | "Produktankündigungen und exklusiven Einblicken."
57 |
58 | #: ../api_basic_class.rst:10
59 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
60 | msgstr ""
61 | "**Spezialrabatte**: Genießen Sie exklusive Rabatte auf unsere neuesten "
62 | "Produkte."
63 |
64 | #: ../api_basic_class.rst:11
65 | msgid ""
66 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
67 | "promotions."
68 | msgstr ""
69 | "**Festliche Aktionen und Gewinnspiele**: Nehmen Sie an Gewinnspielen und "
70 | "Feiertagsaktionen teil."
71 |
72 | #: ../api_basic_class.rst:13
73 | msgid ""
74 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
75 | "join today!"
76 | msgstr ""
77 | "👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf"
78 | " [|link_sf_facebook|] und treten Sie heute bei!"
79 |
80 | #: ../api_basic_class.rst:16
81 | msgid "class ``_Basic_class``"
82 | msgstr "Klasse ``_Basic_class``"
83 |
84 | #: ../api_basic_class.rst:18
85 | msgid ""
86 | "``_Basic_class`` is a logger class for all class to log, so if you want "
87 | "to see logs of a class, just add a debug argument to it."
88 | msgstr ""
89 | "``_Basic_class`` ist eine Logger-Klasse für alle Klassen zur "
90 | "Protokollierung. Wenn Sie Protokolle einer Klasse sehen möchten, fügen "
91 | "Sie einfach ein Debug-Argument hinzu."
92 |
93 | #: ../api_basic_class.rst:21
94 | msgid "**Example**"
95 | msgstr "**Beispiel**"
96 |
97 | #: ../api_basic_class.rst:36
98 | msgid "**API**"
99 | msgstr "**API**"
100 |
101 | #: of robot_hat.basic._Basic_class:1
102 | msgid "Basic Class for all classes"
103 | msgstr "Grundklasse für alle Klassen"
104 |
105 | #: of robot_hat.basic._Basic_class:3
106 | msgid "with debug function"
107 | msgstr "mit Debug-Funktion"
108 |
109 | #: ../docstring of robot_hat.basic._Basic_class.DEBUG_LEVELS:1
110 | #: robot_hat.basic._Basic_class.debug_level:1
111 | msgid "Debug level"
112 | msgstr "Debug-Level"
113 |
114 | #: ../docstring of robot_hat.basic._Basic_class.DEBUG_NAMES:1
115 | msgid "Debug level names"
116 | msgstr "Namen der Debug-Levels"
117 |
118 | #: of robot_hat.basic._Basic_class.__init__:1
119 | msgid "Initialize the basic class"
120 | msgstr "Initialisierung der Grundklasse"
121 |
122 | #: of robot_hat.basic._Basic_class.__init__
123 | msgid "Parameters"
124 | msgstr "Parameter"
125 |
126 | #: of robot_hat.basic._Basic_class.__init__:3
127 | msgid "debug level, 0(critical), 1(error), 2(warning), 3(info) or 4(debug)"
128 | msgstr "Debug-Level, 0(kritisch), 1(Fehler), 2(Warnung), 3(Info) oder 4(Debug)"
129 |
--------------------------------------------------------------------------------
/docs/source/locale/de/LC_MESSAGES/api_servo.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-07-12 18:01+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: de\n"
15 | "Language-Team: de \n"
16 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.12.1\n"
21 |
22 | #: ../api_servo.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr ""
28 | " Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32"
29 | " Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die "
30 | "Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten."
31 |
32 | #: ../api_servo.rst:5
33 | msgid "**Why Join?**"
34 | msgstr " **Warum beitreten?**"
35 |
36 | #: ../api_servo.rst:7
37 | msgid ""
38 | "**Expert Support**: Solve post-sale issues and technical challenges with "
39 | "help from our community and team."
40 | msgstr ""
41 | "**Expertenunterstützung**: Lösen Sie Nachverkaufsprobleme und technische "
42 | "Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams."
43 |
44 | #: ../api_servo.rst:8
45 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
46 | msgstr ""
47 | "**Lernen & Teilen**: Tauschen Sie Tipps und Anleitungen aus, um Ihre "
48 | "Fähigkeiten zu verbessern."
49 |
50 | #: ../api_servo.rst:9
51 | msgid ""
52 | "**Exclusive Previews**: Get early access to new product announcements and"
53 | " sneak peeks."
54 | msgstr ""
55 | "**Exklusive Vorschauen**: Erhalten Sie frühzeitigen Zugang zu neuen "
56 | "Produktankündigungen und exklusiven Einblicken."
57 |
58 | #: ../api_servo.rst:10
59 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
60 | msgstr ""
61 | "**Spezialrabatte**: Genießen Sie exklusive Rabatte auf unsere neuesten "
62 | "Produkte."
63 |
64 | #: ../api_servo.rst:11
65 | msgid ""
66 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
67 | "promotions."
68 | msgstr ""
69 | "**Festliche Aktionen und Gewinnspiele**: Nehmen Sie an Gewinnspielen und "
70 | "Feiertagsaktionen teil."
71 |
72 | #: ../api_servo.rst:13
73 | msgid ""
74 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
75 | "join today!"
76 | msgstr ""
77 | "👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf"
78 | " [|link_sf_facebook|] und treten Sie heute bei!"
79 |
80 | #: ../api_servo.rst:18
81 | msgid "class ``Servo``"
82 | msgstr "Klasse ``Servo``"
83 |
84 | #: ../api_servo.rst:20
85 | msgid "**Example**"
86 | msgstr "**Beispiel**"
87 |
88 | #: ../api_servo.rst:58
89 | msgid "**API**"
90 | msgstr "**API**"
91 |
92 | #: of robot_hat.servo.Servo:1
93 | msgid "Bases: :py:class:`~robot_hat.pwm.PWM`"
94 | msgstr "Basisklasse: :py:class:`~robot_hat.pwm.PWM`"
95 |
96 | #: of robot_hat.servo.Servo:1
97 | msgid "Servo motor class"
98 | msgstr "Servomotorklasse"
99 |
100 | #: of robot_hat.servo.Servo.__init__:1
101 | msgid "Initialize the servo motor class"
102 | msgstr "Die Servomotorklasse initialisieren"
103 |
104 | #: of robot_hat.servo.Servo.__init__ robot_hat.servo.Servo.angle
105 | #: robot_hat.servo.Servo.pulse_width_time
106 | msgid "Parameters"
107 | msgstr "Parameter"
108 |
109 | #: of robot_hat.servo.Servo.__init__:3
110 | msgid "PWM channel number(0-14/P0-P14)"
111 | msgstr "PWM-Kanalnummer (0-14/P0-P14)"
112 |
113 | #: of robot_hat.servo.Servo.angle:1
114 | msgid "Set the angle of the servo motor"
115 | msgstr "Den Winkel des Servomotors einstellen"
116 |
117 | #: of robot_hat.servo.Servo.angle:3
118 | msgid "angle(-90~90)"
119 | msgstr "Winkel (-90~90)"
120 |
121 | #: of robot_hat.servo.Servo.pulse_width_time:1
122 | msgid "Set the pulse width of the servo motor"
123 | msgstr "Die Pulsbreite des Servomotors einstellen"
124 |
125 | #: of robot_hat.servo.Servo.pulse_width_time:3
126 | msgid "pulse width time(500~2500)"
127 | msgstr "Pulsbreitenzeit (500~2500)"
--------------------------------------------------------------------------------
/docs/source/locale/de/LC_MESSAGES/battery.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-07-12 17:46+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: de\n"
15 | "Language-Team: de \n"
16 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.12.1\n"
21 |
22 | #: ../battery.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr ""
28 | " Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32"
29 | " Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die "
30 | "Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten."
31 |
32 | #: ../battery.rst:5
33 | msgid "**Why Join?**"
34 | msgstr " **Warum beitreten?**"
35 |
36 | #: ../battery.rst:7
37 | msgid ""
38 | "**Expert Support**: Solve post-sale issues and technical challenges with "
39 | "help from our community and team."
40 | msgstr ""
41 | "**Expertenunterstützung**: Lösen Sie Nachverkaufsprobleme und technische "
42 | "Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams."
43 |
44 | #: ../battery.rst:8
45 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
46 | msgstr ""
47 | "**Lernen & Teilen**: Tauschen Sie Tipps und Anleitungen aus, um Ihre "
48 | "Fähigkeiten zu verbessern."
49 |
50 | #: ../battery.rst:9
51 | msgid ""
52 | "**Exclusive Previews**: Get early access to new product announcements and"
53 | " sneak peeks."
54 | msgstr ""
55 | "**Exklusive Vorschauen**: Erhalten Sie frühzeitigen Zugang zu neuen "
56 | "Produktankündigungen und exklusiven Einblicken."
57 |
58 | #: ../battery.rst:10
59 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
60 | msgstr ""
61 | "**Spezialrabatte**: Genießen Sie exklusive Rabatte auf unsere neuesten "
62 | "Produkte."
63 |
64 | #: ../battery.rst:11
65 | msgid ""
66 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
67 | "promotions."
68 | msgstr ""
69 | "**Festliche Aktionen und Gewinnspiele**: Nehmen Sie an Gewinnspielen und "
70 | "Feiertagsaktionen teil."
71 |
72 | #: ../battery.rst:13
73 | msgid ""
74 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
75 | "join today!"
76 | msgstr ""
77 | "👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf"
78 | " [|link_sf_facebook|] und treten Sie heute bei!"
79 |
80 | #: ../battery.rst:16
81 | msgid "About the Battery"
82 | msgstr "Über den Akku"
83 |
84 | #: ../battery.rst:17
85 | msgid "**Battery**"
86 | msgstr "**Akku**"
87 |
88 | #: ../battery.rst:23
89 | msgid ""
90 | "**VCC**: Battery positive terminal, here there are two sets of VCC and "
91 | "GND is to increase the current and reduce the resistance."
92 | msgstr ""
93 | "**VCC**: Positiver Batteriepol, hier gibt es zwei Sätze von VCC und GND, "
94 | "um den Strom zu erhöhen und den Widerstand zu verringern."
95 |
96 | #: ../battery.rst:24
97 | msgid ""
98 | "**Middle**: To balance the voltage between the two cells and thus protect"
99 | " the battery."
100 | msgstr ""
101 | "**Middle**: Um die Spannung zwischen den beiden Zellen auszugleichen und "
102 | "so den Akku zu schützen."
103 |
104 | #: ../battery.rst:25
105 | msgid "**GND**: Negative battery terminal."
106 | msgstr "**GND**: Negativer Batteriepol."
107 |
108 | #: ../battery.rst:28
109 | msgid ""
110 | "This is a custom battery pack made by SunFounder consisting of two 18650 "
111 | "batteries with a capacity of 2000mAh. The connector is XH2.54 3pin, which"
112 | " can be charged directly after being inserted into the shield."
113 | msgstr ""
114 | "Dies ist ein benutzerdefinierter Akkupack von SunFounder, bestehend aus "
115 | "zwei 18650 Akkus mit einer Kapazität von 2000mAh. Der Anschluss ist "
116 | "XH2.54 3pin, der direkt nach dem Einsetzen in das Shield geladen werden "
117 | "kann."
118 |
119 | #: ../battery.rst:32
120 | msgid "**Features**"
121 | msgstr "**Eigenschaften**"
122 |
123 | #: ../battery.rst:34
124 | msgid "Composition: Li-ion"
125 | msgstr "Zusammensetzung: Li-Ion"
126 |
127 | #: ../battery.rst:35
128 | msgid "Battery Capacity: 2000mAh, 14.8Wh"
129 | msgstr "Batteriekapazität: 2000mAh, 14.8Wh"
130 |
131 | #: ../battery.rst:36
132 | msgid "Battery Weight: 90.8g"
133 | msgstr "Batterie Gewicht: 90.8g"
134 |
135 | #: ../battery.rst:37
136 | msgid "Number of Cells: 2"
137 | msgstr "Anzahl der Zellen: 2"
138 |
139 | #: ../battery.rst:38
140 | msgid "Connector: XH2.54 3pin"
141 | msgstr "Anschluss: XH2.54 3pin"
142 |
143 | #: ../battery.rst:39
144 | msgid "Over-discharge protection: 6.0V"
145 | msgstr "Überentladungsschutz: 6.0V"
146 |
--------------------------------------------------------------------------------
/docs/source/locale/de/LC_MESSAGES/installation.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-07-12 17:46+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: de\n"
15 | "Language-Team: de \n"
16 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.12.1\n"
21 |
22 | #: ../installation.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr ""
28 | " Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32"
29 | " Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die "
30 | "Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten."
31 |
32 | #: ../installation.rst:5
33 | msgid "**Why Join?**"
34 | msgstr " **Warum beitreten?**"
35 |
36 | #: ../installation.rst:7
37 | msgid ""
38 | "**Expert Support**: Solve post-sale issues and technical challenges with "
39 | "help from our community and team."
40 | msgstr ""
41 | "**Expertenunterstützung**: Lösen Sie Nachverkaufsprobleme und technische "
42 | "Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams."
43 |
44 | #: ../installation.rst:8
45 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
46 | msgstr ""
47 | "**Lernen & Teilen**: Tauschen Sie Tipps und Anleitungen aus, um Ihre "
48 | "Fähigkeiten zu verbessern."
49 |
50 | #: ../installation.rst:9
51 | msgid ""
52 | "**Exclusive Previews**: Get early access to new product announcements and"
53 | " sneak peeks."
54 | msgstr ""
55 | "**Exklusive Vorschauen**: Erhalten Sie frühzeitigen Zugang zu neuen "
56 | "Produktankündigungen und exklusiven Einblicken."
57 |
58 | #: ../installation.rst:10
59 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
60 | msgstr ""
61 | "**Spezialrabatte**: Genießen Sie exklusive Rabatte auf unsere neuesten "
62 | "Produkte."
63 |
64 | #: ../installation.rst:11
65 | msgid ""
66 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
67 | "promotions."
68 | msgstr ""
69 | "**Festliche Aktionen und Gewinnspiele**: Nehmen Sie an Gewinnspielen und "
70 | "Feiertagsaktionen teil."
71 |
72 | #: ../installation.rst:13
73 | msgid ""
74 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
75 | "join today!"
76 | msgstr ""
77 | "👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf"
78 | " [|link_sf_facebook|] und treten Sie heute bei!"
79 |
80 | #: ../installation.rst:16
81 | msgid "Install the ``robot-hat`` Module"
82 | msgstr "Installieren Sie das Modul ``robot-hat``"
83 |
84 | #: ../installation.rst:18
85 | msgid "``robot-hat`` is the supported library for the Robot HAT."
86 | msgstr "``robot-hat`` ist die unterstützte Bibliothek für den Robot HAT."
87 |
88 | #: ../installation.rst:20
89 | msgid "Aktualisieren Sie Ihr System."
90 | msgstr ""
91 |
92 | #: ../installation.rst:22
93 | msgid "Make sure you are connected to the Internet and update your system:"
94 | msgstr "Stellen Sie sicher, dass Sie mit dem Internet verbunden sind und aktualisieren Sie Ihr System:"
95 |
96 | #: ../installation.rst:35
97 | msgid ""
98 | "Python3 related packages must be installed if you are installing the "
99 | "**Lite** version OS."
100 | msgstr "Python3-bezogene Pakete müssen installiert werden, wenn Sie die "
101 | "**Lite** Version OS."
102 |
103 | #: ../installation.rst:45
104 | msgid "Type this command into the terminal to install the ``robot-hat`` package."
105 | msgstr ""
106 | "Geben Sie diesen Befehl im Terminal ein, um das ``robot-hat`` Paket zu "
107 | "installieren."
108 |
109 | #: ../installation.rst:59
110 | msgid ""
111 | "Run ``setup.py`` to download some necessary components. You may have a "
112 | "network problem and the download may fail. At this point you may need to "
113 | "download again. In the following cases, type ``Y`` and press ``Enter`` to"
114 | " continue the process."
115 | msgstr ""
116 | "Führen Sie ``setup.py`` aus, um einige notwendige Komponenten "
117 | "herunterzuladen. Es könnte ein Netzwerkproblem auftreten und der Download"
118 | " fehlschlagen. In diesem Fall müssen Sie möglicherweise erneut "
119 | "herunterladen. Geben Sie in den folgenden Fällen ``Y`` ein und drücken "
120 | "Sie ``Enter``, um den Prozess fortzusetzen."
121 |
122 |
--------------------------------------------------------------------------------
/docs/source/locale/de/LC_MESSAGES/project_control_motor_servo.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-05-24 09:22+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: de\n"
15 | "Language-Team: de \n"
16 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.15.0\n"
21 |
22 | #: ../project_control_motor_servo.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr " Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten."
28 |
29 | #: ../project_control_motor_servo.rst:5
30 | msgid "**Why Join?**"
31 | msgstr " **Warum beitreten?**"
32 |
33 | #: ../project_control_motor_servo.rst:7
34 | msgid ""
35 | "**Expert Support**: Solve post-sale issues and technical challenges with "
36 | "help from our community and team."
37 | msgstr "**Expertenunterstützung**: Lösen Sie Nachverkaufsprobleme und technische Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams."
38 |
39 | #: ../project_control_motor_servo.rst:8
40 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
41 | msgstr "**Lernen & Teilen**: Tauschen Sie Tipps und Anleitungen aus, um Ihre Fähigkeiten zu verbessern."
42 |
43 | #: ../project_control_motor_servo.rst:9
44 | msgid ""
45 | "**Exclusive Previews**: Get early access to new product announcements and"
46 | " sneak peeks."
47 | msgstr "**Exklusive Vorschauen**: Erhalten Sie frühzeitigen Zugang zu neuen Produktankündigungen und exklusiven Einblicken."
48 |
49 | #: ../project_control_motor_servo.rst:10
50 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
51 | msgstr "**Spezialrabatte**: Genießen Sie exklusive Rabatte auf unsere neuesten Produkte."
52 |
53 | #: ../project_control_motor_servo.rst:11
54 | msgid ""
55 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
56 | "promotions."
57 | msgstr "**Festliche Aktionen und Gewinnspiele**: Nehmen Sie an Gewinnspielen und Feiertagsaktionen teil."
58 |
59 | #: ../project_control_motor_servo.rst:13
60 | msgid ""
61 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
62 | "join today!"
63 | msgstr "👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf [|link_sf_facebook|] und treten Sie heute bei!"
64 |
65 | #: ../project_control_motor_servo.rst:16
66 | msgid "Control Servos and Motors"
67 | msgstr "Servos und Motoren steuern"
68 |
69 | #: ../project_control_motor_servo.rst:18
70 | msgid "In this project, we have 12 servos and two motors working simultaneously."
71 | msgstr ""
72 | "In diesem Projekt haben wir 12 Servos und zwei Motoren, die gleichzeitig "
73 | "arbeiten."
74 |
75 | #: ../project_control_motor_servo.rst:24
76 | msgid ""
77 | "However, it's important to note that if your servos and motors have a "
78 | "high starting current, it's recommended to start them separately to avoid"
79 | " insufficient power supply current, which could lead to the Raspberry Pi "
80 | "restarting."
81 | msgstr ""
82 | "Es ist jedoch wichtig zu beachten, dass, wenn Ihre Servos und Motoren "
83 | "einen hohen Anlaufstrom haben, es empfohlen wird, sie separat zu starten,"
84 | " um unzureichenden Stromversorgungsstrom zu vermeiden, der zum Neustart "
85 | "des Raspberry Pi führen könnte."
86 |
87 | #: ../project_control_motor_servo.rst:26
88 | msgid "**Code**"
89 | msgstr "**Code**"
90 |
91 |
--------------------------------------------------------------------------------
/docs/source/locale/de/LC_MESSAGES/project_diy_car.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-05-24 09:22+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: de\n"
15 | "Language-Team: de \n"
16 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.15.0\n"
21 |
22 | #: ../project_diy_car.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr " Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten."
28 |
29 | #: ../project_diy_car.rst:5
30 | msgid "**Why Join?**"
31 | msgstr " **Warum beitreten?**"
32 |
33 | #: ../project_diy_car.rst:7
34 | msgid ""
35 | "**Expert Support**: Solve post-sale issues and technical challenges with "
36 | "help from our community and team."
37 | msgstr "**Expertenunterstützung**: Lösen Sie Nachverkaufsprobleme und technische Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams."
38 |
39 | #: ../project_diy_car.rst:8
40 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
41 | msgstr "**Lernen & Teilen**: Tauschen Sie Tipps und Anleitungen aus, um Ihre Fähigkeiten zu verbessern."
42 |
43 | #: ../project_diy_car.rst:9
44 | msgid ""
45 | "**Exclusive Previews**: Get early access to new product announcements and"
46 | " sneak peeks."
47 | msgstr "**Exklusive Vorschauen**: Erhalten Sie frühzeitigen Zugang zu neuen Produktankündigungen und exklusiven Einblicken."
48 |
49 | #: ../project_diy_car.rst:10
50 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
51 | msgstr "**Spezialrabatte**: Genießen Sie exklusive Rabatte auf unsere neuesten Produkte."
52 |
53 | #: ../project_diy_car.rst:11
54 | msgid ""
55 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
56 | "promotions."
57 | msgstr "**Festliche Aktionen und Gewinnspiele**: Nehmen Sie an Gewinnspielen und Feiertagsaktionen teil."
58 |
59 | #: ../project_diy_car.rst:13
60 | msgid ""
61 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
62 | "join today!"
63 | msgstr "👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf [|link_sf_facebook|] und treten Sie heute bei!"
64 |
65 | #: ../project_diy_car.rst:16
66 | msgid "DIY Car"
67 | msgstr "DIY-Auto"
68 |
69 | #: ../project_diy_car.rst:18
70 | msgid ""
71 | "In addition to being suitable for simple experiments, the Robot HAT is "
72 | "ideal for use as a central controller in robotics, such as for smart "
73 | "cars."
74 | msgstr ""
75 | "Neben der Eignung für einfache Experimente ist der Robot HAT ideal als "
76 | "zentraler Controller in der Robotik, wie zum Beispiel für intelligente "
77 | "Autos, geeignet."
78 |
79 | #: ../project_diy_car.rst:20
80 | msgid "In this project, we built a simple line-following car."
81 | msgstr "In diesem Projekt haben wir ein einfaches linienfolgendes Auto gebaut."
82 |
83 | #: ../project_diy_car.rst:24
84 | msgid "**Code**"
85 | msgstr "**Code**"
86 |
87 |
--------------------------------------------------------------------------------
/docs/source/locale/de/LC_MESSAGES/project_photoresistor.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-05-24 09:22+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: de\n"
15 | "Language-Team: de \n"
16 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.15.0\n"
21 |
22 | #: ../project_photoresistor.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr " Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten."
28 |
29 | #: ../project_photoresistor.rst:5
30 | msgid "**Why Join?**"
31 | msgstr " **Warum beitreten?**"
32 |
33 | #: ../project_photoresistor.rst:7
34 | msgid ""
35 | "**Expert Support**: Solve post-sale issues and technical challenges with "
36 | "help from our community and team."
37 | msgstr "**Expertenunterstützung**: Lösen Sie Nachverkaufsprobleme und technische Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams."
38 |
39 | #: ../project_photoresistor.rst:8
40 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
41 | msgstr "**Lernen & Teilen**: Tauschen Sie Tipps und Anleitungen aus, um Ihre Fähigkeiten zu verbessern."
42 |
43 | #: ../project_photoresistor.rst:9
44 | msgid ""
45 | "**Exclusive Previews**: Get early access to new product announcements and"
46 | " sneak peeks."
47 | msgstr "**Exklusive Vorschauen**: Erhalten Sie frühzeitigen Zugang zu neuen Produktankündigungen und exklusiven Einblicken."
48 |
49 | #: ../project_photoresistor.rst:10
50 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
51 | msgstr "**Spezialrabatte**: Genießen Sie exklusive Rabatte auf unsere neuesten Produkte."
52 |
53 | #: ../project_photoresistor.rst:11
54 | msgid ""
55 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
56 | "promotions."
57 | msgstr "**Festliche Aktionen und Gewinnspiele**: Nehmen Sie an Gewinnspielen und Feiertagsaktionen teil."
58 |
59 | #: ../project_photoresistor.rst:13
60 | msgid ""
61 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
62 | "join today!"
63 | msgstr "👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf [|link_sf_facebook|] und treten Sie heute bei!"
64 |
65 | #: ../project_photoresistor.rst:16
66 | msgid "Read from Photoresistor Module"
67 | msgstr "Lesen vom Fotowiderstandsmodul"
68 |
69 | #: ../project_photoresistor.rst:18
70 | msgid ""
71 | "In this project, we detect the light intensity and display on the I2C "
72 | "LCD1602."
73 | msgstr ""
74 | "In diesem Projekt erfassen wir die Lichtintensität und zeigen sie auf dem"
75 | " I2C LCD1602 an."
76 |
77 | #: ../project_photoresistor.rst:22
78 | msgid "**Steps**"
79 | msgstr "**Schritte**"
80 |
81 | #: ../project_photoresistor.rst:24
82 | msgid ""
83 | "In this project, an I2C LCD1602 is used, so it's necessary to download "
84 | "the relevant libraries to make it work."
85 | msgstr ""
86 | "In diesem Projekt wird ein I2C LCD1602 verwendet, daher ist es notwendig,"
87 | " die relevanten Bibliotheken herunterzuladen, damit es funktioniert."
88 |
89 | #: ../project_photoresistor.rst:31
90 | msgid "Install ``smbus2`` for I2C."
91 | msgstr "Installieren Sie ``smbus2`` für I2C."
92 |
93 | #: ../project_photoresistor.rst:37
94 | msgid ""
95 | "Save the following code to your Raspberry Pi and give it a name, for "
96 | "example, ``photoresistor.ty``."
97 | msgstr ""
98 | "Speichern Sie den folgenden Code auf Ihrem Raspberry Pi und geben Sie ihm"
99 | " einen Namen, zum Beispiel ``photoresistor.ty``."
100 |
101 | #: ../project_photoresistor.rst:78
102 | msgid "Use the command ``sudo python3 photoresistor.ty`` to run this code."
103 | msgstr ""
104 | "Verwenden Sie den Befehl ``sudo python3 photoresistor.ty``, um diesen "
105 | "Code auszuführen."
106 |
107 |
--------------------------------------------------------------------------------
/docs/source/locale/de/LC_MESSAGES/project_plant_monitor.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-05-24 09:22+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: de\n"
15 | "Language-Team: de \n"
16 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.15.0\n"
21 |
22 | #: ../project_plant_monitor.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr " Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten."
28 |
29 | #: ../project_plant_monitor.rst:5
30 | msgid "**Why Join?**"
31 | msgstr " **Warum beitreten?**"
32 |
33 | #: ../project_plant_monitor.rst:7
34 | msgid ""
35 | "**Expert Support**: Solve post-sale issues and technical challenges with "
36 | "help from our community and team."
37 | msgstr "**Expertenunterstützung**: Lösen Sie Nachverkaufsprobleme und technische Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams."
38 |
39 | #: ../project_plant_monitor.rst:8
40 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
41 | msgstr "**Lernen & Teilen**: Tauschen Sie Tipps und Anleitungen aus, um Ihre Fähigkeiten zu verbessern."
42 |
43 | #: ../project_plant_monitor.rst:9
44 | msgid ""
45 | "**Exclusive Previews**: Get early access to new product announcements and"
46 | " sneak peeks."
47 | msgstr "**Exklusive Vorschauen**: Erhalten Sie frühzeitigen Zugang zu neuen Produktankündigungen und exklusiven Einblicken."
48 |
49 | #: ../project_plant_monitor.rst:10
50 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
51 | msgstr "**Spezialrabatte**: Genießen Sie exklusive Rabatte auf unsere neuesten Produkte."
52 |
53 | #: ../project_plant_monitor.rst:11
54 | msgid ""
55 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
56 | "promotions."
57 | msgstr "**Festliche Aktionen und Gewinnspiele**: Nehmen Sie an Gewinnspielen und Feiertagsaktionen teil."
58 |
59 | #: ../project_plant_monitor.rst:13
60 | msgid ""
61 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
62 | "join today!"
63 | msgstr "👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf [|link_sf_facebook|] und treten Sie heute bei!"
64 |
65 | #: ../project_plant_monitor.rst:16
66 | msgid "Plant Monitor"
67 | msgstr "Pflanzenmonitor"
68 |
69 | #: ../project_plant_monitor.rst:18
70 | msgid ""
71 | "In this project, we detect both light intensity and soil moisture levels,"
72 | " and display them on the I2C LCD1602 . When you feel that the soil "
73 | "moisture is insufficient, you can press the button module to water the "
74 | "potted plant."
75 | msgstr ""
76 | "In diesem Projekt erfassen wir sowohl die Lichtintensität als auch den "
77 | "Feuchtigkeitsgehalt des Bodens und zeigen diese auf dem I2C LCD1602 an. "
78 | "Wenn Sie denken, dass die Bodenfeuchtigkeit unzureichend ist, können Sie "
79 | "das Tastenmodul drücken, um die Topfpflanze zu bewässern."
80 |
81 | #: ../project_plant_monitor.rst:22
82 | msgid "**Steps**"
83 | msgstr "**Schritte**"
84 |
85 | #: ../project_plant_monitor.rst:24
86 | msgid ""
87 | "In this project, an I2C LCD1602 is used, so it's necessary to download "
88 | "the relevant libraries to make it work."
89 | msgstr ""
90 | "In diesem Projekt wird ein I2C LCD1602 verwendet, daher ist es notwendig,"
91 | " die relevanten Bibliotheken herunterzuladen, um es zum Laufen zu "
92 | "bringen."
93 |
94 | #: ../project_plant_monitor.rst:31
95 | msgid "Install ``smbus2`` for I2C."
96 | msgstr "Installieren Sie ``smbus2`` für I2C."
97 |
98 | #: ../project_plant_monitor.rst:37
99 | msgid ""
100 | "Save the following code to your Raspberry Pi and give it a name, for "
101 | "example, ``plant_monitor.ty``."
102 | msgstr ""
103 | "Speichern Sie den folgenden Code auf Ihrem Raspberry Pi und geben Sie ihm"
104 | " einen Namen, zum Beispiel ``plant_monitor.ty``."
105 |
106 | #: ../project_plant_monitor.rst:120
107 | msgid "Use the command ``sudo python3 plant_monitor.ty`` to run this code."
108 | msgstr ""
109 | "Verwenden Sie den Befehl ``sudo python3 plant_monitor.ty``, um diesen "
110 | "Code auszuführen."
111 |
112 |
--------------------------------------------------------------------------------
/docs/source/locale/de/LC_MESSAGES/project_say_something.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-05-24 09:22+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: de\n"
15 | "Language-Team: de \n"
16 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.15.0\n"
21 |
22 | #: ../project_say_something.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr " Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten."
28 |
29 | #: ../project_say_something.rst:5
30 | msgid "**Why Join?**"
31 | msgstr " **Warum beitreten?**"
32 |
33 | #: ../project_say_something.rst:7
34 | msgid ""
35 | "**Expert Support**: Solve post-sale issues and technical challenges with "
36 | "help from our community and team."
37 | msgstr "**Expertenunterstützung**: Lösen Sie Nachverkaufsprobleme und technische Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams."
38 |
39 | #: ../project_say_something.rst:8
40 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
41 | msgstr "**Lernen & Teilen**: Tauschen Sie Tipps und Anleitungen aus, um Ihre Fähigkeiten zu verbessern."
42 |
43 | #: ../project_say_something.rst:9
44 | msgid ""
45 | "**Exclusive Previews**: Get early access to new product announcements and"
46 | " sneak peeks."
47 | msgstr "**Exklusive Vorschauen**: Erhalten Sie frühzeitigen Zugang zu neuen Produktankündigungen und exklusiven Einblicken."
48 |
49 | #: ../project_say_something.rst:10
50 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
51 | msgstr "**Spezialrabatte**: Genießen Sie exklusive Rabatte auf unsere neuesten Produkte."
52 |
53 | #: ../project_say_something.rst:11
54 | msgid ""
55 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
56 | "promotions."
57 | msgstr "**Festliche Aktionen und Gewinnspiele**: Nehmen Sie an Gewinnspielen und Feiertagsaktionen teil."
58 |
59 | #: ../project_say_something.rst:13
60 | msgid ""
61 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
62 | "join today!"
63 | msgstr "👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf [|link_sf_facebook|] und treten Sie heute bei!"
64 |
65 | #: ../project_say_something.rst:16
66 | msgid "Say Something"
67 | msgstr "Sage etwas"
68 |
69 | #: ../project_say_something.rst:19
70 | msgid ""
71 | "In this section, you'll learn how to convert text into speech and have "
72 | "Robot HAT speak it aloud."
73 | msgstr ""
74 | "In diesem Abschnitt lernen Sie, wie Sie Text in Sprache umwandeln und vom"
75 | " Robot HAT laut aussprechen lassen."
76 |
77 | #: ../project_say_something.rst:21
78 | msgid "**Steps**"
79 | msgstr "**Schritte**"
80 |
81 | #: ../project_say_something.rst:23
82 | msgid ""
83 | "We retrieve text from the command line to enable Robot HAT to articulate "
84 | "it. To achieve this, save the following code as a ``.py`` file, such as "
85 | "``tts.py``."
86 | msgstr ""
87 | "Wir holen Text von der Kommandozeile ab, damit der Robot HAT ihn "
88 | "artikulieren kann. Um dies zu erreichen, speichern Sie den folgenden Code"
89 | " als eine ``.py``-Datei, wie zum Beispiel ``tts.py``."
90 |
91 | #: ../project_say_something.rst:46
92 | msgid ""
93 | "To make Robot HAT vocalize a specific sentence, you can use the following"
94 | " command: ``sudo python3 tts.py \"any text\"`` - simply replace ``\"any "
95 | "text\"`` with the desired phrase."
96 | msgstr ""
97 | "Um den Robot HAT eine bestimmte Satz aussprechen zu lassen, können Sie "
98 | "den folgenden Befehl verwenden: ``sudo python3 tts.py „any text“`` - "
99 | "ersetzen Sie einfach ``„any text“`` durch den gewünschten Satz."
100 |
101 | #: ../project_say_something.rst:50
102 | msgid ":ref:`faq_speaker`"
103 | msgstr ":ref:`faq_speaker`"
104 |
105 |
--------------------------------------------------------------------------------
/docs/source/locale/de/LC_MESSAGES/project_security.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-05-24 09:22+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: de\n"
15 | "Language-Team: de \n"
16 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.15.0\n"
21 |
22 | #: ../project_security.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr " Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten."
28 |
29 | #: ../project_security.rst:5
30 | msgid "**Why Join?**"
31 | msgstr " **Warum beitreten?**"
32 |
33 | #: ../project_security.rst:7
34 | msgid ""
35 | "**Expert Support**: Solve post-sale issues and technical challenges with "
36 | "help from our community and team."
37 | msgstr "**Expertenunterstützung**: Lösen Sie Nachverkaufsprobleme und technische Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams."
38 |
39 | #: ../project_security.rst:8
40 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
41 | msgstr "**Lernen & Teilen**: Tauschen Sie Tipps und Anleitungen aus, um Ihre Fähigkeiten zu verbessern."
42 |
43 | #: ../project_security.rst:9
44 | msgid ""
45 | "**Exclusive Previews**: Get early access to new product announcements and"
46 | " sneak peeks."
47 | msgstr "**Exklusive Vorschauen**: Erhalten Sie frühzeitigen Zugang zu neuen Produktankündigungen und exklusiven Einblicken."
48 |
49 | #: ../project_security.rst:10
50 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
51 | msgstr "**Spezialrabatte**: Genießen Sie exklusive Rabatte auf unsere neuesten Produkte."
52 |
53 | #: ../project_security.rst:11
54 | msgid ""
55 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
56 | "promotions."
57 | msgstr "**Festliche Aktionen und Gewinnspiele**: Nehmen Sie an Gewinnspielen und Feiertagsaktionen teil."
58 |
59 | #: ../project_security.rst:13
60 | msgid ""
61 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
62 | "join today!"
63 | msgstr "👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf [|link_sf_facebook|] und treten Sie heute bei!"
64 |
65 | #: ../project_security.rst:16
66 | msgid "Security System"
67 | msgstr "Sicherheitssystem"
68 |
69 | #: ../project_security.rst:18
70 | msgid ""
71 | "In this project, we've created a simple security system. The PIR sensor "
72 | "detects if someone passes by, and then the camera activates. If a face is"
73 | " detected, it takes a picture and simultaneously delivers a warning "
74 | "message."
75 | msgstr ""
76 | "In diesem Projekt haben wir ein einfaches Sicherheitssystem erstellt. Der"
77 | " PIR-Sensor erkennt, ob jemand vorbeigeht, und dann wird die Kamera "
78 | "aktiviert. Wenn ein Gesicht erkannt wird, macht sie ein Bild und liefert "
79 | "gleichzeitig eine Warnmeldung."
80 |
81 | #: ../project_security.rst:22
82 | msgid "**Steps**"
83 | msgstr "**Schritte**"
84 |
85 | #: ../project_security.rst:24
86 | msgid "Install the ``vilib`` library for face detection."
87 | msgstr "Installieren Sie die ``vilib``-Bibliothek zur Gesichtserkennung."
88 |
89 | #: ../project_security.rst:33
90 | msgid ""
91 | "Save the following code to your Raspberry Pi and give it a name, for "
92 | "example, ``security.ty``."
93 | msgstr ""
94 | "Speichern Sie den folgenden Code auf Ihrem Raspberry Pi und geben Sie ihm"
95 | " einen Namen, zum Beispiel ``security.ty``."
96 |
97 | #: ../project_security.rst:106
98 | msgid "Use the command ``sudo python3 security.py`` to run this code."
99 | msgstr ""
100 | "Verwenden Sie den Befehl ``sudo python3 security.py``, um diesen Code "
101 | "auszuführen."
102 |
103 | #: ../project_security.rst:106
104 | msgid ":ref:`faq_speaker`"
105 | msgstr ":ref:`faq_speaker`"
106 |
107 | #: ../project_security.rst:108
108 | msgid ""
109 | "Open a web browser and enter ``http://rpi_ip:9000/mjpg`` to view the "
110 | "captured footage. Additionally, you can find the captured face images in "
111 | "``/home/{username}/Pictures/``."
112 | msgstr ""
113 | "Öffnen Sie einen Webbrowser und geben Sie ``http://rpi_ip:9000/mjpg`` "
114 | "ein, um das aufgenommene Filmmaterial anzusehen. Zusätzlich finden Sie "
115 | "die aufgenommenen Gesichtsbilder in ``/home/{Benutzername}/Bilder/``."
116 |
117 |
--------------------------------------------------------------------------------
/docs/source/locale/de/LC_MESSAGES/project_ultrasonic.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-05-24 09:22+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: de\n"
15 | "Language-Team: de \n"
16 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.15.0\n"
21 |
22 | #: ../project_ultrasonic.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr " Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten."
28 |
29 | #: ../project_ultrasonic.rst:5
30 | msgid "**Why Join?**"
31 | msgstr " **Warum beitreten?**"
32 |
33 | #: ../project_ultrasonic.rst:7
34 | msgid ""
35 | "**Expert Support**: Solve post-sale issues and technical challenges with "
36 | "help from our community and team."
37 | msgstr "**Expertenunterstützung**: Lösen Sie Nachverkaufsprobleme und technische Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams."
38 |
39 | #: ../project_ultrasonic.rst:8
40 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
41 | msgstr "**Lernen & Teilen**: Tauschen Sie Tipps und Anleitungen aus, um Ihre Fähigkeiten zu verbessern."
42 |
43 | #: ../project_ultrasonic.rst:9
44 | msgid ""
45 | "**Exclusive Previews**: Get early access to new product announcements and"
46 | " sneak peeks."
47 | msgstr "**Exklusive Vorschauen**: Erhalten Sie frühzeitigen Zugang zu neuen Produktankündigungen und exklusiven Einblicken."
48 |
49 | #: ../project_ultrasonic.rst:10
50 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
51 | msgstr "**Spezialrabatte**: Genießen Sie exklusive Rabatte auf unsere neuesten Produkte."
52 |
53 | #: ../project_ultrasonic.rst:11
54 | msgid ""
55 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
56 | "promotions."
57 | msgstr "**Festliche Aktionen und Gewinnspiele**: Nehmen Sie an Gewinnspielen und Feiertagsaktionen teil."
58 |
59 | #: ../project_ultrasonic.rst:13
60 | msgid ""
61 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
62 | "join today!"
63 | msgstr "👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf [|link_sf_facebook|] und treten Sie heute bei!"
64 |
65 | #: ../project_ultrasonic.rst:16
66 | msgid "Read from Ultrasonic Module"
67 | msgstr "Lesen vom Ultraschallmodul"
68 |
69 | #: ../project_ultrasonic.rst:19
70 | msgid ""
71 | "In this project, we use ultrasonic sensors to measure distance and "
72 | "display the readings on the I2C LCD1602."
73 | msgstr ""
74 | "In diesem Projekt verwenden wir Ultraschallsensoren, um Entfernungen zu "
75 | "messen und die Messwerte auf dem I2C LCD1602 anzuzeigen."
76 |
77 | #: ../project_ultrasonic.rst:23
78 | msgid "**Steps**"
79 | msgstr "**Schritte**"
80 |
81 | #: ../project_ultrasonic.rst:25
82 | msgid ""
83 | "In this project, an I2C LCD1602 is used, so it's necessary to download "
84 | "the relevant libraries to make it work."
85 | msgstr ""
86 | "In diesem Projekt wird ein I2C LCD1602 verwendet, daher ist es notwendig,"
87 | " die relevanten Bibliotheken herunterzuladen, um es zum Laufen zu "
88 | "bringen."
89 |
90 | #: ../project_ultrasonic.rst:32
91 | msgid "Install ``smbus2`` for I2C."
92 | msgstr "Installieren Sie ``smbus2`` für I2C."
93 |
94 | #: ../project_ultrasonic.rst:38
95 | msgid ""
96 | "Save the following code to your Raspberry Pi and give it a name, for "
97 | "example, ``ultrasonic.ty``."
98 | msgstr ""
99 | "Speichern Sie den folgenden Code auf Ihrem Raspberry Pi und geben Sie ihm"
100 | " einen Namen, zum Beispiel ``ultrasonic.ty``."
101 |
102 | #: ../project_ultrasonic.rst:88
103 | msgid "Use the command ``sudo python3 ultrasonic.ty`` to run this code."
104 | msgstr ""
105 | "Verwenden Sie den Befehl ``sudo python3 ultrasonic.ty``, um diesen Code "
106 | "auszuführen."
107 |
108 |
--------------------------------------------------------------------------------
/docs/source/locale/de/LC_MESSAGES/projects.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-05-24 09:22+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: de\n"
15 | "Language-Team: de \n"
16 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.15.0\n"
21 |
22 | #: ../projects.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr " Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten."
28 |
29 | #: ../projects.rst:5
30 | msgid "**Why Join?**"
31 | msgstr " **Warum beitreten?**"
32 |
33 | #: ../projects.rst:7
34 | msgid ""
35 | "**Expert Support**: Solve post-sale issues and technical challenges with "
36 | "help from our community and team."
37 | msgstr "**Expertenunterstützung**: Lösen Sie Nachverkaufsprobleme und technische Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams."
38 |
39 | #: ../projects.rst:8
40 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
41 | msgstr "**Lernen & Teilen**: Tauschen Sie Tipps und Anleitungen aus, um Ihre Fähigkeiten zu verbessern."
42 |
43 | #: ../projects.rst:9
44 | msgid ""
45 | "**Exclusive Previews**: Get early access to new product announcements and"
46 | " sneak peeks."
47 | msgstr "**Exklusive Vorschauen**: Erhalten Sie frühzeitigen Zugang zu neuen Produktankündigungen und exklusiven Einblicken."
48 |
49 | #: ../projects.rst:10
50 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
51 | msgstr "**Spezialrabatte**: Genießen Sie exklusive Rabatte auf unsere neuesten Produkte."
52 |
53 | #: ../projects.rst:11
54 | msgid ""
55 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
56 | "promotions."
57 | msgstr "**Festliche Aktionen und Gewinnspiele**: Nehmen Sie an Gewinnspielen und Feiertagsaktionen teil."
58 |
59 | #: ../projects.rst:13
60 | msgid ""
61 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
62 | "join today!"
63 | msgstr "👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf [|link_sf_facebook|] und treten Sie heute bei!"
64 |
65 | #: ../projects.rst:16
66 | msgid "Some Projects"
67 | msgstr "Einige Projekte"
68 |
69 | #: ../projects.rst:18
70 | msgid ""
71 | "Here, you'll find a collection of fascinating projects, all implemented "
72 | "using the Robot HAT. We provide you with detailed code, giving you the "
73 | "opportunity to try these projects out for yourself."
74 | msgstr ""
75 | "Hier finden Sie eine Sammlung faszinierender Projekte, alle umgesetzt mit"
76 | " dem Robot HAT. Wir stellen Ihnen detaillierten Code zur Verfügung, der "
77 | "Ihnen die Möglichkeit bietet, diese Projekte selbst auszuprobieren."
78 |
79 |
--------------------------------------------------------------------------------
/docs/source/locale/ja/LC_MESSAGES/api.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-05-24 09:22+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: ja\n"
15 | "Language-Team: ja \n"
16 | "Plural-Forms: nplurals=1; plural=0;\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.15.0\n"
21 |
22 | #: ../api.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr "こんにちは、SunFounderのRaspberry Pi & Arduino & ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。"
28 |
29 | #: ../api.rst:5
30 | msgid "**Why Join?**"
31 | msgstr " **参加する理由は?**"
32 |
33 | #: ../api.rst:7
34 | msgid ""
35 | "**Expert Support**: Solve post-sale issues and technical challenges with "
36 | "help from our community and team."
37 | msgstr "**エキスパートサポート**:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。"
38 |
39 | #: ../api.rst:8
40 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
41 | msgstr ""
42 | "**学び&共有**:ヒントやチュートリアルを交換してスキルを向上させましょう。"
43 |
44 | #: ../api.rst:9
45 | msgid ""
46 | "**Exclusive Previews**: Get early access to new product announcements and"
47 | " sneak peeks."
48 | msgstr "**独占的なプレビュー**:新製品の発表や先行プレビューに早期アクセスしましょう。"
49 |
50 | #: ../api.rst:10
51 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
52 | msgstr ""
53 | "**特別割引**:最新製品の独占割引をお楽しみください。"
54 |
55 | #: ../api.rst:11
56 | msgid ""
57 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
58 | "promotions."
59 | msgstr "**祭りのプロモーションとギフト**:ギフトや祝日のプロモーションに参加しましょう。"
60 |
61 | #: ../api.rst:13
62 | msgid ""
63 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
64 | "join today!"
65 | msgstr "👉 私たちと一緒に探索し、創造する準備はできていますか?[|link_sf_facebook|]をクリックして今すぐ参加しましょう!"
66 |
67 | #: ../api.rst:16
68 | msgid "Reference"
69 | msgstr "参照"
70 |
71 | #: of robot_hat:1
72 | msgid "Robot Hat Library"
73 | msgstr "Robot Hatライブラリ"
74 |
75 |
--------------------------------------------------------------------------------
/docs/source/locale/ja/LC_MESSAGES/api_adc.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2024, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2024.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-07-12 18:01+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: ja\n"
15 | "Language-Team: ja \n"
16 | "Plural-Forms: nplurals=1; plural=0;\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.12.1\n"
21 |
22 | #: ../api_adc.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr ""
28 | " こんにちは、SunFounderのRaspberry Pi & Arduino & "
29 | "ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry "
30 | "Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。"
31 |
32 | #: ../api_adc.rst:5
33 | msgid "**Why Join?**"
34 | msgstr " **参加する理由は?**"
35 |
36 | #: ../api_adc.rst:7
37 | msgid ""
38 | "**Expert Support**: Solve post-sale issues and technical challenges with "
39 | "help from our community and team."
40 | msgstr "**エキスパートサポート**:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。"
41 |
42 | #: ../api_adc.rst:8
43 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
44 | msgstr "**学び&共有**:ヒントやチュートリアルを交換してスキルを向上させましょう。"
45 |
46 | #: ../api_adc.rst:9
47 | msgid ""
48 | "**Exclusive Previews**: Get early access to new product announcements and"
49 | " sneak peeks."
50 | msgstr "独占的なプレビュー**:新製品の発表や先行プレビューに早期アクセスしましょう。"
51 |
52 | #: ../api_adc.rst:10
53 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
54 | msgstr "**特別割引**:最新製品の独占割引をお楽しみください。"
55 |
56 | #: ../api_adc.rst:11
57 | msgid ""
58 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
59 | "promotions."
60 | msgstr "**祭りのプロモーションとギフト**:ギフトや祝日のプロモーションに参加しましょう。"
61 |
62 | #: ../api_adc.rst:13
63 | msgid ""
64 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
65 | "join today!"
66 | msgstr "👉 私たちと一緒に探索し、創造する準備はできていますか?[|link_sf_facebook|]をクリックして今すぐ参加しましょう!"
67 |
68 | #: ../api_adc.rst:18
69 | msgid "class ``ADC``"
70 | msgstr "クラス ``ADC``"
71 |
72 | #: ../api_adc.rst:20
73 | msgid "**Example**"
74 | msgstr "**例**"
75 |
76 | #: ../api_adc.rst:42
77 | msgid "**API**"
78 | msgstr "**API**"
79 |
80 | #: of robot_hat.adc.ADC:1
81 | msgid "Bases: :py:class:`~robot_hat.i2c.I2C`"
82 | msgstr "基底: :py:class:`~robot_hat.i2c.I2C`"
83 |
84 | #: of robot_hat.adc.ADC:1 robot_hat.adc.ADC.__init__:1
85 | msgid "Analog to digital converter"
86 | msgstr "アナログからデジタルへの変換器"
87 |
88 | #: of robot_hat.adc.ADC.__init__
89 | msgid "Parameters"
90 | msgstr "パラメータ"
91 |
92 | #: of robot_hat.adc.ADC.__init__:3
93 | msgid "channel number (0-7/A0-A7)"
94 | msgstr "チャンネル番号 (0-7/A0-A7)"
95 |
96 | #: of robot_hat.adc.ADC.read:1
97 | msgid "Read the ADC value"
98 | msgstr "ADC値を読む"
99 |
100 | #: of robot_hat.adc.ADC.read robot_hat.adc.ADC.read_voltage
101 | msgid "Returns"
102 | msgstr "戻り値"
103 |
104 | #: of robot_hat.adc.ADC.read:3
105 | msgid "ADC value(0-4095)"
106 | msgstr "ADC値(0-4095)"
107 |
108 | #: of robot_hat.adc.ADC.read robot_hat.adc.ADC.read_voltage
109 | msgid "Return type"
110 | msgstr "戻り値の型"
111 |
112 | #: of robot_hat.adc.ADC.read_voltage:1
113 | msgid "Read the ADC value and convert to voltage"
114 | msgstr "ADC値を読み取り電圧に変換する"
115 |
116 | #: of robot_hat.adc.ADC.read_voltage:3
117 | msgid "Voltage value(0-3.3(V))"
118 | msgstr "電圧値(0-3.3(V))"
119 |
--------------------------------------------------------------------------------
/docs/source/locale/ja/LC_MESSAGES/api_basic_class.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-07-12 18:01+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: ja\n"
15 | "Language-Team: ja \n"
16 | "Plural-Forms: nplurals=1; plural=0;\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.12.1\n"
21 |
22 | #: ../api_basic_class.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr ""
28 | "こんにちは、SunFounderのRaspberry Pi & Arduino & "
29 | "ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry "
30 | "Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。"
31 |
32 | #: ../api_basic_class.rst:5
33 | msgid "**Why Join?**"
34 | msgstr " **参加する理由は?**"
35 |
36 | #: ../api_basic_class.rst:7
37 | msgid ""
38 | "**Expert Support**: Solve post-sale issues and technical challenges with "
39 | "help from our community and team."
40 | msgstr "**エキスパートサポート**:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。"
41 |
42 | #: ../api_basic_class.rst:8
43 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
44 | msgstr "**学び&共有**:ヒントやチュートリアルを交換してスキルを向上させましょう。"
45 |
46 | #: ../api_basic_class.rst:9
47 | msgid ""
48 | "**Exclusive Previews**: Get early access to new product announcements and"
49 | " sneak peeks."
50 | msgstr "**独占的なプレビュー**:新製品の発表や先行プレビューに早期アクセスしましょう。"
51 |
52 | #: ../api_basic_class.rst:10
53 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
54 | msgstr "**特別割引**:最新製品の独占割引をお楽しみください。"
55 |
56 | #: ../api_basic_class.rst:11
57 | msgid ""
58 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
59 | "promotions."
60 | msgstr "**祭りのプロモーションとギフト**:ギフトや祝日のプロモーションに参加しましょう。"
61 |
62 | #: ../api_basic_class.rst:13
63 | msgid ""
64 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
65 | "join today!"
66 | msgstr "👉 私たちと一緒に探索し、創造する準備はできていますか?[|link_sf_facebook|]をクリックして今すぐ参加しましょう!"
67 |
68 | #: ../api_basic_class.rst:16
69 | msgid "class ``_Basic_class``"
70 | msgstr "クラス ``_Basic_class``"
71 |
72 | #: ../api_basic_class.rst:18
73 | msgid ""
74 | "``_Basic_class`` is a logger class for all class to log, so if you want "
75 | "to see logs of a class, just add a debug argument to it."
76 | msgstr "``_Basic_class`` はすべてのクラスのロガークラスで、特定のクラスのログを見たい場合は、デバッグ引数を追加するだけです。"
77 |
78 | #: ../api_basic_class.rst:21
79 | msgid "**Example**"
80 | msgstr "**例**"
81 |
82 | #: ../api_basic_class.rst:36
83 | msgid "**API**"
84 | msgstr "**API**"
85 |
86 | #: of robot_hat.basic._Basic_class:1
87 | msgid "Basic Class for all classes"
88 | msgstr "すべてのクラスの基本クラス"
89 |
90 | #: of robot_hat.basic._Basic_class:3
91 | msgid "with debug function"
92 | msgstr "デバッグ機能付き"
93 |
94 | #: ../docstring of robot_hat.basic._Basic_class.DEBUG_LEVELS:1
95 | #: robot_hat.basic._Basic_class.debug_level:1
96 | msgid "Debug level"
97 | msgstr "デバッグレベル"
98 |
99 | #: ../docstring of robot_hat.basic._Basic_class.DEBUG_NAMES:1
100 | msgid "Debug level names"
101 | msgstr "デバッグレベルの名称"
102 |
103 | #: of robot_hat.basic._Basic_class.__init__:1
104 | msgid "Initialize the basic class"
105 | msgstr "基本クラスを初期化する"
106 |
107 | #: of robot_hat.basic._Basic_class.__init__
108 | msgid "Parameters"
109 | msgstr "パラメータ"
110 |
111 | #: of robot_hat.basic._Basic_class.__init__:3
112 | msgid "debug level, 0(critical), 1(error), 2(warning), 3(info) or 4(debug)"
113 | msgstr "デバッグレベル、0(重大)、1(エラー)、2(警告)、3(情報)または4(デバッグ)"
114 |
115 |
--------------------------------------------------------------------------------
/docs/source/locale/ja/LC_MESSAGES/api_servo.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-07-12 18:01+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: ja\n"
15 | "Language-Team: ja \n"
16 | "Plural-Forms: nplurals=1; plural=0;\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.12.1\n"
21 |
22 | #: ../api_servo.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr ""
28 | "こんにちは、SunFounderのRaspberry Pi & Arduino & "
29 | "ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry "
30 | "Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。"
31 |
32 | #: ../api_servo.rst:5
33 | msgid "**Why Join?**"
34 | msgstr " **参加する理由は?**"
35 |
36 | #: ../api_servo.rst:7
37 | msgid ""
38 | "**Expert Support**: Solve post-sale issues and technical challenges with "
39 | "help from our community and team."
40 | msgstr "**エキスパートサポート**:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。"
41 |
42 | #: ../api_servo.rst:8
43 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
44 | msgstr "**学び&共有**:ヒントやチュートリアルを交換してスキルを向上させましょう。"
45 |
46 | #: ../api_servo.rst:9
47 | msgid ""
48 | "**Exclusive Previews**: Get early access to new product announcements and"
49 | " sneak peeks."
50 | msgstr "**独占的なプレビュー**:新製品の発表や先行プレビューに早期アクセスしましょう。"
51 |
52 | #: ../api_servo.rst:10
53 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
54 | msgstr "**特別割引**:最新製品の独占割引をお楽しみください。"
55 |
56 | #: ../api_servo.rst:11
57 | msgid ""
58 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
59 | "promotions."
60 | msgstr "**祭りのプロモーションとギフト**:ギフトや祝日のプロモーションに参加しましょう。"
61 |
62 | #: ../api_servo.rst:13
63 | msgid ""
64 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
65 | "join today!"
66 | msgstr "👉 私たちと一緒に探索し、創造する準備はできていますか?[|link_sf_facebook|]をクリックして今すぐ参加しましょう!"
67 |
68 | #: ../api_servo.rst:18
69 | msgid "class ``Servo``"
70 | msgstr "クラス ``Servo``"
71 |
72 | #: ../api_servo.rst:20
73 | msgid "**Example**"
74 | msgstr "**例**"
75 |
76 | #: ../api_servo.rst:58
77 | msgid "**API**"
78 | msgstr "**API**"
79 |
80 | #: of robot_hat.servo.Servo:1
81 | msgid "Bases: :py:class:`~robot_hat.pwm.PWM`"
82 | msgstr "基底: :py:class:`~robot_hat.pwm.PWM`"
83 |
84 | #: of robot_hat.servo.Servo:1
85 | msgid "Servo motor class"
86 | msgstr "サーボモータークラス"
87 |
88 | #: of robot_hat.servo.Servo.__init__:1
89 | msgid "Initialize the servo motor class"
90 | msgstr "サーボモータークラスを初期化する"
91 |
92 | #: of robot_hat.servo.Servo.__init__ robot_hat.servo.Servo.angle
93 | #: robot_hat.servo.Servo.pulse_width_time
94 | msgid "Parameters"
95 | msgstr "パラメータ"
96 |
97 | #: of robot_hat.servo.Servo.__init__:3
98 | msgid "PWM channel number(0-14/P0-P14)"
99 | msgstr "PWMチャンネル番号(0-14/P0-P14)"
100 |
101 | #: of robot_hat.servo.Servo.angle:1
102 | msgid "Set the angle of the servo motor"
103 | msgstr "サーボモーターの角度を設定する"
104 |
105 | #: of robot_hat.servo.Servo.angle:3
106 | msgid "angle(-90~90)"
107 | msgstr "角度(-90~90)"
108 |
109 | #: of robot_hat.servo.Servo.pulse_width_time:1
110 | msgid "Set the pulse width of the servo motor"
111 | msgstr "サーボモーターのパルス幅を設定する"
112 |
113 | #: of robot_hat.servo.Servo.pulse_width_time:3
114 | msgid "pulse width time(500~2500)"
115 | msgstr "パルス幅時間(500~2500)"
116 |
117 |
118 |
--------------------------------------------------------------------------------
/docs/source/locale/ja/LC_MESSAGES/battery.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-07-12 17:46+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: ja\n"
15 | "Language-Team: ja \n"
16 | "Plural-Forms: nplurals=1; plural=0;\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.12.1\n"
21 |
22 | #: ../battery.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr ""
28 | "こんにちは、SunFounderのRaspberry Pi & Arduino & "
29 | "ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry "
30 | "Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。"
31 |
32 | #: ../battery.rst:5
33 | msgid "**Why Join?**"
34 | msgstr " **参加する理由は?**"
35 |
36 | #: ../battery.rst:7
37 | msgid ""
38 | "**Expert Support**: Solve post-sale issues and technical challenges with "
39 | "help from our community and team."
40 | msgstr "**エキスパートサポート**:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。"
41 |
42 | #: ../battery.rst:8
43 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
44 | msgstr "**学び&共有**:ヒントやチュートリアルを交換してスキルを向上させましょう。"
45 |
46 | #: ../battery.rst:9
47 | msgid ""
48 | "**Exclusive Previews**: Get early access to new product announcements and"
49 | " sneak peeks."
50 | msgstr "**独占的なプレビュー**:新製品の発表や先行プレビューに早期アクセスしましょう。"
51 |
52 | #: ../battery.rst:10
53 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
54 | msgstr "**特別割引**:最新製品の独占割引をお楽しみください。"
55 |
56 | #: ../battery.rst:11
57 | msgid ""
58 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
59 | "promotions."
60 | msgstr "**祭りのプロモーションとギフト**:ギフトや祝日のプロモーションに参加しましょう。"
61 |
62 | #: ../battery.rst:13
63 | msgid ""
64 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
65 | "join today!"
66 | msgstr "👉 私たちと一緒に探索し、創造する準備はできていますか?[|link_sf_facebook|]をクリックして今すぐ参加しましょう!"
67 |
68 | #: ../battery.rst:16
69 | msgid "About the Battery"
70 | msgstr "バッテリーについて"
71 |
72 | #: ../battery.rst:17
73 | msgid "**Battery**"
74 | msgstr "**バッテリー**"
75 |
76 | #: ../battery.rst:23
77 | msgid ""
78 | "**VCC**: Battery positive terminal, here there are two sets of VCC and "
79 | "GND is to increase the current and reduce the resistance."
80 | msgstr "**VCC**: バッテリーの正極端子。ここにはVCCとGNDの2組があり、電流を増やし抵抗を減らすためです。"
81 |
82 | #: ../battery.rst:24
83 | msgid ""
84 | "**Middle**: To balance the voltage between the two cells and thus protect"
85 | " the battery."
86 | msgstr "**Middle**: 二つのセル間の電圧をバランスさせ、バッテリーを保護します。"
87 |
88 | #: ../battery.rst:25
89 | msgid "**GND**: Negative battery terminal."
90 | msgstr "**GND**: バッテリーの負極端子。"
91 |
92 | #: ../battery.rst:28
93 | msgid ""
94 | "This is a custom battery pack made by SunFounder consisting of two 18650 "
95 | "batteries with a capacity of 2000mAh. The connector is XH2.54 3pin, which"
96 | " can be charged directly after being inserted into the shield."
97 | msgstr ""
98 | "これはSunFounderによって製造されたカスタムバッテリーパックで、2000mAhの容量を持つ18650バッテリー2個で構成されています。コネクターは"
99 | " XH2.54-3Pで、シールドに挿入後、直接充電が可能です。"
100 |
101 | #: ../battery.rst:32
102 | msgid "**Features**"
103 | msgstr "**特徴**"
104 |
105 | #: ../battery.rst:34
106 | msgid "Composition: Li-ion"
107 | msgstr "構成: Li Battery (リチウムイオン二次電池)"
108 |
109 | #: ../battery.rst:35
110 | msgid "Battery Capacity: 2000mAh, 14.8Wh"
111 | msgstr "バッテリー容量: 2000mAh, 14.8Wh"
112 |
113 | #: ../battery.rst:36
114 | msgid "Battery Weight: 90.8g"
115 | msgstr "バッテリー重量:90.8g"
116 |
117 | #: ../battery.rst:37
118 | msgid "Number of Cells: 2"
119 | msgstr "セル数:2"
120 |
121 | #: ../battery.rst:38
122 | msgid "Connector: XH2.54 3pin"
123 | msgstr "コネクター: XH2.54 3pin"
124 |
125 | #: ../battery.rst:39
126 | msgid "Over-discharge protection: 6.0V"
127 | msgstr "過放電保護 6.0V"
128 |
--------------------------------------------------------------------------------
/docs/source/locale/ja/LC_MESSAGES/community_tutorials.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2024, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2024.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-05-24 09:22+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: ja\n"
15 | "Language-Team: ja \n"
16 | "Plural-Forms: nplurals=1; plural=0;\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.15.0\n"
21 |
22 | #: ../community_tutorials.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr "こんにちは、SunFounderのRaspberry Pi & Arduino & ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。"
28 |
29 | #: ../community_tutorials.rst:5
30 | msgid "**Why Join?**"
31 | msgstr " **参加する理由は?**"
32 |
33 | #: ../community_tutorials.rst:7
34 | msgid ""
35 | "**Expert Support**: Solve post-sale issues and technical challenges with "
36 | "help from our community and team."
37 | msgstr "**エキスパートサポート**:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。"
38 |
39 | #: ../community_tutorials.rst:8
40 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
41 | msgstr ""
42 | "**学び&共有**:ヒントやチュートリアルを交換してスキルを向上させましょう。"
43 |
44 | #: ../community_tutorials.rst:9
45 | msgid ""
46 | "**Exclusive Previews**: Get early access to new product announcements and"
47 | " sneak peeks."
48 | msgstr "**独占的なプレビュー**:新製品の発表や先行プレビューに早期アクセスしましょう。"
49 |
50 | #: ../community_tutorials.rst:10
51 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
52 | msgstr ""
53 | "**特別割引**:最新製品の独占割引をお楽しみください。"
54 |
55 | #: ../community_tutorials.rst:11
56 | msgid ""
57 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
58 | "promotions."
59 | msgstr "**祭りのプロモーションとギフト**:ギフトや祝日のプロモーションに参加しましょう。"
60 |
61 | #: ../community_tutorials.rst:13
62 | msgid ""
63 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
64 | "join today!"
65 | msgstr "👉 私たちと一緒に探索し、創造する準備はできていますか?[|link_sf_facebook|]をクリックして今すぐ参加しましょう!"
66 |
67 | #: ../community_tutorials.rst:16
68 | msgid "Community Tutorials"
69 | msgstr "コミュニティチュートリアル"
70 |
71 | #: ../community_tutorials.rst:18
72 | msgid "|link_peppe8o|"
73 | msgstr "|link_peppe8o|"
74 |
75 | #: ../community_tutorials.rst:20
76 | msgid ""
77 | "This document summarizes the SunFounder Raspberry Pi Robot HAT, covering "
78 | "its purpose, compatibility, specifications, and testing:"
79 | msgstr ""
80 | "この文書は、SunFounder Raspberry Pi Robot "
81 | "HATに関する概要を説明し、その目的、互換性、仕様、テストについて述べています:"
82 |
83 | #: ../community_tutorials.rst:22
84 | msgid ""
85 | "**Introduction**: Explains the Robot HAT's role in simplifying control "
86 | "for Raspberry Pi-based DIY robot projects."
87 | msgstr "**はじめに**: Raspberry PiベースのDIYロボットプロジェクトの制御を簡素化するRobot HATの役割について説明します。"
88 |
89 | #: ../community_tutorials.rst:23
90 | msgid ""
91 | "**Specifications**: Details the technical specs, including power input, "
92 | "battery details, ports, and motor driver features."
93 | msgstr "**仕様**: 電源入力、バッテリーの詳細、ポート、モータードライバーの機能など、技術的な仕様について詳述します。"
94 |
95 | #: ../community_tutorials.rst:24
96 | msgid ""
97 | "**Ports Overview**: Describes various ports like Power, Digital, Analog, "
98 | "PWM, I2C, SPI, UART, and Motor Ports."
99 | msgstr "**ポートの概要**: 電源、デジタル、アナログ、PWM、I2C、SPI、UART、モーターポートなど、各種ポートについて説明します。"
100 |
101 | #: ../community_tutorials.rst:25
102 | msgid ""
103 | "**Additional Components**: Highlights extra components like buttons, LED,"
104 | " and speaker, with Raspberry Pi PIN mappings."
105 | msgstr "**追加コンポーネント**: ボタン、LED、スピーカーなどの追加コンポーネントと、Raspberry PiのPIN配置を強調します。"
106 |
107 | #: ../community_tutorials.rst:26
108 | msgid ""
109 | "**Setup and Testing**: Guides on mounting the Robot HAT, necessary "
110 | "components, and testing procedures for features like LED and servo "
111 | "motors."
112 | msgstr "**セットアップとテスト**: Robot HATの取り付け、必要なコンポーネント、LEDやサーボモーターなどの機能のテスト手順について案内します。"
113 |
114 |
--------------------------------------------------------------------------------
/docs/source/locale/ja/LC_MESSAGES/index.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-07-12 17:46+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: ja\n"
15 | "Language-Team: ja \n"
16 | "Plural-Forms: nplurals=1; plural=0;\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.12.1\n"
21 |
22 | #: ../index.rst:43
23 | msgid "About this HAT"
24 | msgstr "このHATについて"
25 |
26 | #: ../index.rst:3
27 | msgid ""
28 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
29 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
30 | "Arduino, and ESP32 with fellow enthusiasts."
31 | msgstr ""
32 | "こんにちは、SunFounderのRaspberry Pi & Arduino & "
33 | "ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry "
34 | "Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。"
35 |
36 | #: ../index.rst:5
37 | msgid "**Why Join?**"
38 | msgstr " **参加する理由は?**"
39 |
40 | #: ../index.rst:7
41 | msgid ""
42 | "**Expert Support**: Solve post-sale issues and technical challenges with "
43 | "help from our community and team."
44 | msgstr "**エキスパートサポート**:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。"
45 |
46 | #: ../index.rst:8
47 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
48 | msgstr "**学び&共有**:ヒントやチュートリアルを交換してスキルを向上させましょう。"
49 |
50 | #: ../index.rst:9
51 | msgid ""
52 | "**Exclusive Previews**: Get early access to new product announcements and"
53 | " sneak peeks."
54 | msgstr "**独占的なプレビュー**:新製品の発表や先行プレビューに早期アクセスしましょう。"
55 |
56 | #: ../index.rst:10
57 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
58 | msgstr "**特別割引**:最新製品の独占割引をお楽しみください。"
59 |
60 | #: ../index.rst:11
61 | msgid ""
62 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
63 | "promotions."
64 | msgstr "**祭りのプロモーションとギフト**:ギフトや祝日のプロモーションに参加しましょう。"
65 |
66 | #: ../index.rst:13
67 | msgid ""
68 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
69 | "join today!"
70 | msgstr "👉 私たちと一緒に探索し、創造する準備はできていますか?[|link_sf_facebook|]をクリックして今すぐ参加しましょう!"
71 |
72 | #: ../index.rst:16
73 | msgid "SunFounder Robot HAT"
74 | msgstr "SunFounder Robot HAT"
75 |
76 | #: ../index.rst:18
77 | msgid "Thanks for choosing our Robot HAT."
78 | msgstr "SunFounder Robot HATをお選びいただき、ありがとうございます。"
79 |
80 | #: ../index.rst:21
81 | msgid "This document is available in the following languages."
82 | msgstr "このドキュメントは以下の言語で利用可能です。"
83 |
84 | #: ../index.rst:23
85 | msgid "|link_german_tutorials|"
86 | msgstr "|link_german_tutorials|"
87 |
88 | #: ../index.rst:24
89 | msgid "|link_jp_tutorials|"
90 | msgstr "|link_jp_tutorials|"
91 |
92 | #: ../index.rst:25
93 | msgid "|link_en_tutorials|"
94 | msgstr "|link_en_tutorials|"
95 |
96 | #: ../index.rst:27
97 | msgid ""
98 | "Please click on the respective links to access the document in your "
99 | "preferred language."
100 | msgstr "ご希望の言語でドキュメントにアクセスするために、それぞれのリンクをクリックしてください。"
101 |
102 | #: ../index.rst:34
103 | msgid ""
104 | "Robot HAT is a multifunctional expansion board that allows Raspberry Pi "
105 | "to be quickly turned into a robot. An MCU is on board to extend the PWM "
106 | "output and ADC input for the Raspberry Pi, as well as a motor driver "
107 | "chip, Bluetooth module, I2S audio module and mono speaker. As well as the"
108 | " GPIOs that lead out of the Raspberry Pi itself."
109 | msgstr ""
110 | "Robot HATは、Raspberry Piを迅速にロボットに変換できる多機能拡張ボードです。MCUが搭載されており、Raspberry "
111 | "PiのPWM出力とADC入力を拡張するとともに、モータードライバーチップ、Bluetoothモジュール、I2Sオーディオモジュール、モノラルスピーカー、そしてRaspberry"
112 | " Pi自体から出るGPIOも搭載しています。"
113 |
114 | #: ../index.rst:36
115 | msgid ""
116 | "It also comes with a Speaker, which can be used to play background music,"
117 | " sound effects and implement TTS functions to make your project more "
118 | "interesting."
119 | msgstr "また、背景音楽や効果音を再生し、TTS機能を実装してプロジェクトをより魅力的にするためのスピーカーも付属しています。"
120 |
121 | #: ../index.rst:38
122 | msgid ""
123 | "Accepts 6.0V-8.4V XH2.54 3pin power input with 2 power indicators. The "
124 | "board also has a user available LED and a button for you to quickly test "
125 | "some effects."
126 | msgstr ""
127 | "6.0V-8.4V XH2.54 "
128 | "3ピン電源入力と2つの電源インジケータを受け入れます。このボードには、ユーザーが使用可能なLEDと、いくつかの効果を迅速にテストするためのボタンも備えています。"
129 |
130 | #: ../index.rst:40
131 | msgid ""
132 | "In this document, you will get a full understanding of the interface "
133 | "functions of the Robot HAT and the usage of these interfaces through the "
134 | "Python ``robot-hat`` library provided by SunFounder."
135 | msgstr ""
136 | "この文書では、SunFounderが提供するPython ``robot-hat`` ライブラリを通じて、Robot "
137 | "HATのインターフェイス機能とこれらのインターフェイスの使用方法を完全に理解できます。"
138 |
139 |
--------------------------------------------------------------------------------
/docs/source/locale/ja/LC_MESSAGES/install_i2s_for_speaker.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-05-24 09:22+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: ja\n"
15 | "Language-Team: ja \n"
16 | "Plural-Forms: nplurals=1; plural=0;\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.15.0\n"
21 |
22 | #: ../install_i2s_for_speaker.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr "こんにちは、SunFounderのRaspberry Pi & Arduino & ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。"
28 |
29 | #: ../install_i2s_for_speaker.rst:5
30 | msgid "**Why Join?**"
31 | msgstr " **参加する理由は?**"
32 |
33 | #: ../install_i2s_for_speaker.rst:7
34 | msgid ""
35 | "**Expert Support**: Solve post-sale issues and technical challenges with "
36 | "help from our community and team."
37 | msgstr "**エキスパートサポート**:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。"
38 |
39 | #: ../install_i2s_for_speaker.rst:8
40 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
41 | msgstr ""
42 | "**学び&共有**:ヒントやチュートリアルを交換してスキルを向上させましょう。"
43 |
44 | #: ../install_i2s_for_speaker.rst:9
45 | msgid ""
46 | "**Exclusive Previews**: Get early access to new product announcements and"
47 | " sneak peeks."
48 | msgstr "**独占的なプレビュー**:新製品の発表や先行プレビューに早期アクセスしましょう。"
49 |
50 | #: ../install_i2s_for_speaker.rst:10
51 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
52 | msgstr ""
53 | "**特別割引**:最新製品の独占割引をお楽しみください。"
54 |
55 | #: ../install_i2s_for_speaker.rst:11
56 | msgid ""
57 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
58 | "promotions."
59 | msgstr "**祭りのプロモーションとギフト**:ギフトや祝日のプロモーションに参加しましょう。"
60 |
61 | #: ../install_i2s_for_speaker.rst:13
62 | msgid ""
63 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
64 | "join today!"
65 | msgstr "👉 私たちと一緒に探索し、創造する準備はできていますか?[|link_sf_facebook|]をクリックして今すぐ参加しましょう!"
66 |
67 | #: ../install_i2s_for_speaker.rst:18
68 | msgid "Install ``i2samp.sh`` for the Speaker"
69 | msgstr "スピーカー用の ``i2samp.sh`` をインストールする"
70 |
71 | #: ../install_i2s_for_speaker.rst:20
72 | msgid ""
73 | "The ``i2samp.sh`` is a sophisticated Bash script specifically designed "
74 | "for setting up and configuring an I2S (Inter-IC Sound) amplifier on "
75 | "Raspberry Pi and similar devices. Licensed under the MIT license, it "
76 | "ensures compatibility with a range of hardware and operating systems, "
77 | "conducting thorough checks before proceeding with any installation or "
78 | "configuration."
79 | msgstr ""
80 | "``i2samp.sh`` は、Raspberry Piや類似のデバイスでI2S(Inter-IC "
81 | "Sound)アンプを設定し、構成するために特別に設計された高度なBashスクリプトです。MITライセンスのもとで、さまざまなハードウェアとオペレーティングシステムとの互換性を保証し、インストールや構成を進める前に徹底的なチェックを行います。"
82 |
83 | #: ../install_i2s_for_speaker.rst:22
84 | msgid ""
85 | "If you want your speaker to work properly, you definitely need to install"
86 | " this script."
87 | msgstr "スピーカーを適切に動作させたい場合は、このスクリプトのインストールが絶対に必要です。"
88 |
89 | #: ../install_i2s_for_speaker.rst:24
90 | msgid "The steps are as follows:"
91 | msgstr "手順は以下の通りです:"
92 |
93 | #: ../install_i2s_for_speaker.rst:31
94 | msgid "Type ``y`` and press ``enter`` to continue running the script."
95 | msgstr "``y`` と入力し ``enter`` を押して、スクリプトの実行を続けます。"
96 |
97 | #: ../install_i2s_for_speaker.rst:35
98 | msgid "Type ``y`` and press ``enter`` to run ``/dev/zero`` in the background."
99 | msgstr "``y`` と入力し ``enter`` を押して、バックグラウンドで ``/dev/zero`` を実行します。"
100 |
101 | #: ../install_i2s_for_speaker.rst:39
102 | msgid "Type ``y`` and press ``enter`` to restart the Raspberry pi."
103 | msgstr "``y`` と入力し ``enter`` を押して、Raspberry Piを再起動します。"
104 |
105 | #: ../install_i2s_for_speaker.rst:45
106 | msgid ""
107 | "If there is no sound after restarting, you may need to run the "
108 | "``i2samp.sh`` script several times."
109 | msgstr "再起動後に音が出ない場合は、 ``i2samp.sh`` スクリプトを数回実行する必要があるかもしれません。"
110 |
111 |
--------------------------------------------------------------------------------
/docs/source/locale/ja/LC_MESSAGES/installation.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-07-12 17:46+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: ja\n"
15 | "Language-Team: ja \n"
16 | "Plural-Forms: nplurals=1; plural=0;\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.12.1\n"
21 |
22 | #: ../installation.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr ""
28 | "こんにちは、SunFounderのRaspberry Pi & Arduino & "
29 | "ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry "
30 | "Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。"
31 |
32 | #: ../installation.rst:5
33 | msgid "**Why Join?**"
34 | msgstr " **参加する理由は?**"
35 |
36 | #: ../installation.rst:7
37 | msgid ""
38 | "**Expert Support**: Solve post-sale issues and technical challenges with "
39 | "help from our community and team."
40 | msgstr "**エキスパートサポート**:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。"
41 |
42 | #: ../installation.rst:8
43 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
44 | msgstr "**学び&共有**:ヒントやチュートリアルを交換してスキルを向上させましょう。"
45 |
46 | #: ../installation.rst:9
47 | msgid ""
48 | "**Exclusive Previews**: Get early access to new product announcements and"
49 | " sneak peeks."
50 | msgstr "**独占的なプレビュー**:新製品の発表や先行プレビューに早期アクセスしましょう。"
51 |
52 | #: ../installation.rst:10
53 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
54 | msgstr "**特別割引**:最新製品の独占割引をお楽しみください。"
55 |
56 | #: ../installation.rst:11
57 | msgid ""
58 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
59 | "promotions."
60 | msgstr "**祭りのプロモーションとギフト**:ギフトや祝日のプロモーションに参加しましょう。"
61 |
62 | #: ../installation.rst:13
63 | msgid ""
64 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
65 | "join today!"
66 | msgstr "👉 私たちと一緒に探索し、創造する準備はできていますか?[|link_sf_facebook|]をクリックして今すぐ参加しましょう!"
67 |
68 | #: ../installation.rst:16
69 | msgid "Install the ``robot-hat`` Module"
70 | msgstr "``robot-hat`` モジュールのインストール"
71 |
72 | #: ../installation.rst:18
73 | msgid "``robot-hat`` is the supported library for the Robot HAT."
74 | msgstr "``robot-hat`` はRobot HATに対応したライブラリです。"
75 |
76 | #: ../installation.rst:20
77 | msgid "Update your system."
78 | msgstr "システムをアップデートしてください。"
79 |
80 | #: ../installation.rst:22
81 | msgid "Make sure you are connected to the Internet and update your system:"
82 | msgstr "インターネットに接続していることを確認し、システムをアップデートしてください:"
83 |
84 | #: ../installation.rst:35
85 | msgid ""
86 | "Python3 related packages must be installed if you are installing the "
87 | "**Lite** version OS."
88 | msgstr "OSの **Lite** バージョンをインストールする場合、Python3関連のパッケージをインストールする必要があります。"
89 |
90 | #: ../installation.rst:45
91 | msgid "Type this command into the terminal to install the ``robot-hat`` package."
92 | msgstr "このコマンドをターミナルに入力して、``robot-hat`` パッケージをインストールします。"
93 |
94 | #: ../installation.rst:59
95 | msgid ""
96 | "Run ``setup.py`` to download some necessary components. You may have a "
97 | "network problem and the download may fail. At this point you may need to "
98 | "download again. In the following cases, type ``Y`` and press ``Enter`` to"
99 | " continue the process."
100 | msgstr ""
101 | "``setup.py`` "
102 | "を実行して必要なコンポーネントをダウンロードします。ネットワークの問題でダウンロードが失敗することがあります。その場合は、再度ダウンロードが必要になるかもしれません。次のような場合には、"
103 | " ``Y`` と入力し ``Enter`` を押してプロセスを続行してください。"
104 |
--------------------------------------------------------------------------------
/docs/source/locale/ja/LC_MESSAGES/project_control_motor_servo.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-05-24 09:22+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: ja\n"
15 | "Language-Team: ja \n"
16 | "Plural-Forms: nplurals=1; plural=0;\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.15.0\n"
21 |
22 | #: ../project_control_motor_servo.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr "こんにちは、SunFounderのRaspberry Pi & Arduino & ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。"
28 |
29 | #: ../project_control_motor_servo.rst:5
30 | msgid "**Why Join?**"
31 | msgstr " **参加する理由は?**"
32 |
33 | #: ../project_control_motor_servo.rst:7
34 | msgid ""
35 | "**Expert Support**: Solve post-sale issues and technical challenges with "
36 | "help from our community and team."
37 | msgstr "**エキスパートサポート**:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。"
38 |
39 | #: ../project_control_motor_servo.rst:8
40 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
41 | msgstr ""
42 | "**学び&共有**:ヒントやチュートリアルを交換してスキルを向上させましょう。"
43 |
44 | #: ../project_control_motor_servo.rst:9
45 | msgid ""
46 | "**Exclusive Previews**: Get early access to new product announcements and"
47 | " sneak peeks."
48 | msgstr "**独占的なプレビュー**:新製品の発表や先行プレビューに早期アクセスしましょう。"
49 |
50 | #: ../project_control_motor_servo.rst:10
51 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
52 | msgstr ""
53 | "**特別割引**:最新製品の独占割引をお楽しみください。"
54 |
55 | #: ../project_control_motor_servo.rst:11
56 | msgid ""
57 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
58 | "promotions."
59 | msgstr "**祭りのプロモーションとギフト**:ギフトや祝日のプロモーションに参加しましょう。"
60 |
61 | #: ../project_control_motor_servo.rst:13
62 | msgid ""
63 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
64 | "join today!"
65 | msgstr "👉 私たちと一緒に探索し、創造する準備はできていますか?[|link_sf_facebook|]をクリックして今すぐ参加しましょう!"
66 |
67 | #: ../project_control_motor_servo.rst:16
68 | msgid "Control Servos and Motors"
69 | msgstr "サーボとモーターの制御"
70 |
71 | #: ../project_control_motor_servo.rst:18
72 | msgid "In this project, we have 12 servos and two motors working simultaneously."
73 | msgstr "このプロジェクトでは、12個のサーボと2つのモーターが同時に動作します。"
74 |
75 | #: ../project_control_motor_servo.rst:24
76 | msgid ""
77 | "However, it's important to note that if your servos and motors have a "
78 | "high starting current, it's recommended to start them separately to avoid"
79 | " insufficient power supply current, which could lead to the Raspberry Pi "
80 | "restarting."
81 | msgstr ""
82 | "ただし、サーボやモーターの始動電流が高い場合は、それらを個別に起動して、電源電流不足を避けることをお勧めします。電流不足はRaspberry "
83 | "Piの再起動につながる可能性があります。"
84 |
85 | #: ../project_control_motor_servo.rst:26
86 | msgid "**Code**"
87 | msgstr "**コード**"
88 |
89 |
--------------------------------------------------------------------------------
/docs/source/locale/ja/LC_MESSAGES/project_diy_car.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-05-24 09:22+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: ja\n"
15 | "Language-Team: ja \n"
16 | "Plural-Forms: nplurals=1; plural=0;\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.15.0\n"
21 |
22 | #: ../project_diy_car.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr "こんにちは、SunFounderのRaspberry Pi & Arduino & ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。"
28 |
29 | #: ../project_diy_car.rst:5
30 | msgid "**Why Join?**"
31 | msgstr " **参加する理由は?**"
32 |
33 | #: ../project_diy_car.rst:7
34 | msgid ""
35 | "**Expert Support**: Solve post-sale issues and technical challenges with "
36 | "help from our community and team."
37 | msgstr "**エキスパートサポート**:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。"
38 |
39 | #: ../project_diy_car.rst:8
40 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
41 | msgstr ""
42 | "**学び&共有**:ヒントやチュートリアルを交換してスキルを向上させましょう。"
43 |
44 | #: ../project_diy_car.rst:9
45 | msgid ""
46 | "**Exclusive Previews**: Get early access to new product announcements and"
47 | " sneak peeks."
48 | msgstr "**独占的なプレビュー**:新製品の発表や先行プレビューに早期アクセスしましょう。"
49 |
50 | #: ../project_diy_car.rst:10
51 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
52 | msgstr ""
53 | "**特別割引**:最新製品の独占割引をお楽しみください。"
54 |
55 | #: ../project_diy_car.rst:11
56 | msgid ""
57 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
58 | "promotions."
59 | msgstr "**祭りのプロモーションとギフト**:ギフトや祝日のプロモーションに参加しましょう。"
60 |
61 | #: ../project_diy_car.rst:13
62 | msgid ""
63 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
64 | "join today!"
65 | msgstr "👉 私たちと一緒に探索し、創造する準備はできていますか?[|link_sf_facebook|]をクリックして今すぐ参加しましょう!"
66 |
67 | #: ../project_diy_car.rst:16
68 | msgid "DIY Car"
69 | msgstr "DIYカー"
70 |
71 | #: ../project_diy_car.rst:18
72 | msgid ""
73 | "In addition to being suitable for simple experiments, the Robot HAT is "
74 | "ideal for use as a central controller in robotics, such as for smart "
75 | "cars."
76 | msgstr "シンプルな実験に適しているだけでなく、スマートカーなどのロボティクスにおける中央コントローラとしても、Robot HATは理想的です。"
77 |
78 | #: ../project_diy_car.rst:20
79 | msgid "In this project, we built a simple line-following car."
80 | msgstr "このプロジェクトでは、シンプルなラインフォローイングカーを作りました。"
81 |
82 | #: ../project_diy_car.rst:24
83 | msgid "**Code**"
84 | msgstr "**コード**"
85 |
86 |
--------------------------------------------------------------------------------
/docs/source/locale/ja/LC_MESSAGES/project_photoresistor.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-05-24 09:22+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: ja\n"
15 | "Language-Team: ja \n"
16 | "Plural-Forms: nplurals=1; plural=0;\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.15.0\n"
21 |
22 | #: ../project_photoresistor.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr "こんにちは、SunFounderのRaspberry Pi & Arduino & ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。"
28 |
29 | #: ../project_photoresistor.rst:5
30 | msgid "**Why Join?**"
31 | msgstr " **参加する理由は?**"
32 |
33 | #: ../project_photoresistor.rst:7
34 | msgid ""
35 | "**Expert Support**: Solve post-sale issues and technical challenges with "
36 | "help from our community and team."
37 | msgstr "**エキスパートサポート**:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。"
38 |
39 | #: ../project_photoresistor.rst:8
40 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
41 | msgstr ""
42 | "**学び&共有**:ヒントやチュートリアルを交換してスキルを向上させましょう。"
43 |
44 | #: ../project_photoresistor.rst:9
45 | msgid ""
46 | "**Exclusive Previews**: Get early access to new product announcements and"
47 | " sneak peeks."
48 | msgstr "**独占的なプレビュー**:新製品の発表や先行プレビューに早期アクセスしましょう。"
49 |
50 | #: ../project_photoresistor.rst:10
51 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
52 | msgstr ""
53 | "**特別割引**:最新製品の独占割引をお楽しみください。"
54 |
55 | #: ../project_photoresistor.rst:11
56 | msgid ""
57 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
58 | "promotions."
59 | msgstr "**祭りのプロモーションとギフト**:ギフトや祝日のプロモーションに参加しましょう。"
60 |
61 | #: ../project_photoresistor.rst:13
62 | msgid ""
63 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
64 | "join today!"
65 | msgstr "👉 私たちと一緒に探索し、創造する準備はできていますか?[|link_sf_facebook|]をクリックして今すぐ参加しましょう!"
66 |
67 | #: ../project_photoresistor.rst:16
68 | msgid "Read from Photoresistor Module"
69 | msgstr "フォトレジスタモジュールから読み取る"
70 |
71 | #: ../project_photoresistor.rst:18
72 | msgid ""
73 | "In this project, we detect the light intensity and display on the I2C "
74 | "LCD1602."
75 | msgstr "このプロジェクトでは、光の強度を検出し、I2C LCD1602に表示します。"
76 |
77 | #: ../project_photoresistor.rst:22
78 | msgid "**Steps**"
79 | msgstr "**手順**"
80 |
81 | #: ../project_photoresistor.rst:24
82 | msgid ""
83 | "In this project, an I2C LCD1602 is used, so it's necessary to download "
84 | "the relevant libraries to make it work."
85 | msgstr "このプロジェクトではI2C LCD1602を使用しているため、関連するライブラリをダウンロードして機能させる必要があります。"
86 |
87 | #: ../project_photoresistor.rst:31
88 | msgid "Install ``smbus2`` for I2C."
89 | msgstr "I2C用に ``smbus2`` をインストールします。"
90 |
91 | #: ../project_photoresistor.rst:37
92 | msgid ""
93 | "Save the following code to your Raspberry Pi and give it a name, for "
94 | "example, ``photoresistor.ty``."
95 | msgstr "以下のコードをRaspberry Piに保存し、例えば ``photoresistor.ty`` のような名前を付けます。"
96 |
97 | #: ../project_photoresistor.rst:78
98 | msgid "Use the command ``sudo python3 photoresistor.ty`` to run this code."
99 | msgstr "このコードを実行するには、コマンド ``sudo python3 photoresistor.ty`` を使用します。"
100 |
101 |
--------------------------------------------------------------------------------
/docs/source/locale/ja/LC_MESSAGES/project_plant_monitor.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-05-24 09:22+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: ja\n"
15 | "Language-Team: ja \n"
16 | "Plural-Forms: nplurals=1; plural=0;\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.15.0\n"
21 |
22 | #: ../project_plant_monitor.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr "こんにちは、SunFounderのRaspberry Pi & Arduino & ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。"
28 |
29 | #: ../project_plant_monitor.rst:5
30 | msgid "**Why Join?**"
31 | msgstr " **参加する理由は?**"
32 |
33 | #: ../project_plant_monitor.rst:7
34 | msgid ""
35 | "**Expert Support**: Solve post-sale issues and technical challenges with "
36 | "help from our community and team."
37 | msgstr "**エキスパートサポート**:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。"
38 |
39 | #: ../project_plant_monitor.rst:8
40 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
41 | msgstr ""
42 | "**学び&共有**:ヒントやチュートリアルを交換してスキルを向上させましょう。"
43 |
44 | #: ../project_plant_monitor.rst:9
45 | msgid ""
46 | "**Exclusive Previews**: Get early access to new product announcements and"
47 | " sneak peeks."
48 | msgstr "**独占的なプレビュー**:新製品の発表や先行プレビューに早期アクセスしましょう。"
49 |
50 | #: ../project_plant_monitor.rst:10
51 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
52 | msgstr ""
53 | "**特別割引**:最新製品の独占割引をお楽しみください。"
54 |
55 | #: ../project_plant_monitor.rst:11
56 | msgid ""
57 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
58 | "promotions."
59 | msgstr "**祭りのプロモーションとギフト**:ギフトや祝日のプロモーションに参加しましょう。"
60 |
61 | #: ../project_plant_monitor.rst:13
62 | msgid ""
63 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
64 | "join today!"
65 | msgstr "👉 私たちと一緒に探索し、創造する準備はできていますか?[|link_sf_facebook|]をクリックして今すぐ参加しましょう!"
66 |
67 | #: ../project_plant_monitor.rst:16
68 | msgid "Plant Monitor"
69 | msgstr "プラントモニター"
70 |
71 | #: ../project_plant_monitor.rst:18
72 | msgid ""
73 | "In this project, we detect both light intensity and soil moisture levels,"
74 | " and display them on the I2C LCD1602 . When you feel that the soil "
75 | "moisture is insufficient, you can press the button module to water the "
76 | "potted plant."
77 | msgstr ""
78 | "このプロジェクトでは、光の強度と土壌の水分レベルの両方を検出し、I2C "
79 | "LCD1602に表示します。土壌の水分が不足していると感じたら、ボタンモジュールを押して鉢植えに水をやることができます。"
80 |
81 | #: ../project_plant_monitor.rst:22
82 | msgid "**Steps**"
83 | msgstr "**手順**"
84 |
85 | #: ../project_plant_monitor.rst:24
86 | msgid ""
87 | "In this project, an I2C LCD1602 is used, so it's necessary to download "
88 | "the relevant libraries to make it work."
89 | msgstr "このプロジェクトではI2C LCD1602を使用しているため、関連するライブラリをダウンロードして機能させる必要があります。"
90 |
91 | #: ../project_plant_monitor.rst:31
92 | msgid "Install ``smbus2`` for I2C."
93 | msgstr "I2C用に ``smbus2`` をインストールします。"
94 |
95 | #: ../project_plant_monitor.rst:37
96 | msgid ""
97 | "Save the following code to your Raspberry Pi and give it a name, for "
98 | "example, ``plant_monitor.ty``."
99 | msgstr "以下のコードをRaspberry Piに保存し、例えば ``plant_monitor.ty`` という名前を付けます。"
100 |
101 | #: ../project_plant_monitor.rst:120
102 | msgid "Use the command ``sudo python3 plant_monitor.ty`` to run this code."
103 | msgstr "このコードを実行するには、 ``sudo python3 plant_monitor.ty`` コマンドを使用します。"
104 |
105 |
--------------------------------------------------------------------------------
/docs/source/locale/ja/LC_MESSAGES/project_say_something.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-05-24 09:22+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: ja\n"
15 | "Language-Team: ja \n"
16 | "Plural-Forms: nplurals=1; plural=0;\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.15.0\n"
21 |
22 | #: ../project_say_something.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr "こんにちは、SunFounderのRaspberry Pi & Arduino & ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。"
28 |
29 | #: ../project_say_something.rst:5
30 | msgid "**Why Join?**"
31 | msgstr " **参加する理由は?**"
32 |
33 | #: ../project_say_something.rst:7
34 | msgid ""
35 | "**Expert Support**: Solve post-sale issues and technical challenges with "
36 | "help from our community and team."
37 | msgstr "**エキスパートサポート**:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。"
38 |
39 | #: ../project_say_something.rst:8
40 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
41 | msgstr ""
42 | "**学び&共有**:ヒントやチュートリアルを交換してスキルを向上させましょう。"
43 |
44 | #: ../project_say_something.rst:9
45 | msgid ""
46 | "**Exclusive Previews**: Get early access to new product announcements and"
47 | " sneak peeks."
48 | msgstr "**独占的なプレビュー**:新製品の発表や先行プレビューに早期アクセスしましょう。"
49 |
50 | #: ../project_say_something.rst:10
51 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
52 | msgstr ""
53 | "**特別割引**:最新製品の独占割引をお楽しみください。"
54 |
55 | #: ../project_say_something.rst:11
56 | msgid ""
57 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
58 | "promotions."
59 | msgstr "**祭りのプロモーションとギフト**:ギフトや祝日のプロモーションに参加しましょう。"
60 |
61 | #: ../project_say_something.rst:13
62 | msgid ""
63 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
64 | "join today!"
65 | msgstr "👉 私たちと一緒に探索し、創造する準備はできていますか?[|link_sf_facebook|]をクリックして今すぐ参加しましょう!"
66 |
67 | #: ../project_say_something.rst:16
68 | msgid "Say Something"
69 | msgstr "何かを話す"
70 |
71 | #: ../project_say_something.rst:19
72 | msgid ""
73 | "In this section, you'll learn how to convert text into speech and have "
74 | "Robot HAT speak it aloud."
75 | msgstr "このセクションでは、テキストを音声に変換して、Robot HATに大声で話させる方法を学びます。"
76 |
77 | #: ../project_say_something.rst:21
78 | msgid "**Steps**"
79 | msgstr "**手順**"
80 |
81 | #: ../project_say_something.rst:23
82 | msgid ""
83 | "We retrieve text from the command line to enable Robot HAT to articulate "
84 | "it. To achieve this, save the following code as a ``.py`` file, such as "
85 | "``tts.py``."
86 | msgstr ""
87 | "コマンドラインからテキストを取得してRobot HATがそれを話すようにします。これを実現するために、以下のコードを ``.py`` "
88 | "ファイルとして保存します。例えば ``tts.py`` などです。"
89 |
90 | #: ../project_say_something.rst:46
91 | msgid ""
92 | "To make Robot HAT vocalize a specific sentence, you can use the following"
93 | " command: ``sudo python3 tts.py \"any text\"`` - simply replace ``\"any "
94 | "text\"`` with the desired phrase."
95 | msgstr ""
96 | "Robot HATに特定の文章を発声させるには、次のコマンドを使用します: ``sudo python3 tts.py \"任意のテキスト\"``"
97 | " - 単に ``\"任意のテキスト\"`` を希望のフレーズに置き換えてください。"
98 |
99 | #: ../project_say_something.rst:50
100 | msgid ":ref:`faq_speaker`"
101 | msgstr ":ref:`faq_speaker`"
102 |
103 |
--------------------------------------------------------------------------------
/docs/source/locale/ja/LC_MESSAGES/project_security.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-05-24 09:22+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: ja\n"
15 | "Language-Team: ja \n"
16 | "Plural-Forms: nplurals=1; plural=0;\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.15.0\n"
21 |
22 | #: ../project_security.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr "こんにちは、SunFounderのRaspberry Pi & Arduino & ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。"
28 |
29 | #: ../project_security.rst:5
30 | msgid "**Why Join?**"
31 | msgstr " **参加する理由は?**"
32 |
33 | #: ../project_security.rst:7
34 | msgid ""
35 | "**Expert Support**: Solve post-sale issues and technical challenges with "
36 | "help from our community and team."
37 | msgstr "**エキスパートサポート**:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。"
38 |
39 | #: ../project_security.rst:8
40 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
41 | msgstr ""
42 | "**学び&共有**:ヒントやチュートリアルを交換してスキルを向上させましょう。"
43 |
44 | #: ../project_security.rst:9
45 | msgid ""
46 | "**Exclusive Previews**: Get early access to new product announcements and"
47 | " sneak peeks."
48 | msgstr "**独占的なプレビュー**:新製品の発表や先行プレビューに早期アクセスしましょう。"
49 |
50 | #: ../project_security.rst:10
51 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
52 | msgstr ""
53 | "**特別割引**:最新製品の独占割引をお楽しみください。"
54 |
55 | #: ../project_security.rst:11
56 | msgid ""
57 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
58 | "promotions."
59 | msgstr "**祭りのプロモーションとギフト**:ギフトや祝日のプロモーションに参加しましょう。"
60 |
61 | #: ../project_security.rst:13
62 | msgid ""
63 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
64 | "join today!"
65 | msgstr "👉 私たちと一緒に探索し、創造する準備はできていますか?[|link_sf_facebook|]をクリックして今すぐ参加しましょう!"
66 |
67 | #: ../project_security.rst:16
68 | msgid "Security System"
69 | msgstr "セキュリティシステム"
70 |
71 | #: ../project_security.rst:18
72 | msgid ""
73 | "In this project, we've created a simple security system. The PIR sensor "
74 | "detects if someone passes by, and then the camera activates. If a face is"
75 | " detected, it takes a picture and simultaneously delivers a warning "
76 | "message."
77 | msgstr "このプロジェクトでは、シンプルなセキュリティシステムを作成しました。PIRセンサーが人の動きを検出すると、カメラが起動します。顔が検出されると、写真を撮り、同時に警告メッセージを発信します。"
78 |
79 | #: ../project_security.rst:22
80 | msgid "**Steps**"
81 | msgstr "**手順**"
82 |
83 | #: ../project_security.rst:24
84 | msgid "Install the ``vilib`` library for face detection."
85 | msgstr "顔検出のための ``vilib`` ライブラリをインストールします。"
86 |
87 | #: ../project_security.rst:33
88 | msgid ""
89 | "Save the following code to your Raspberry Pi and give it a name, for "
90 | "example, ``security.ty``."
91 | msgstr "以下のコードをRaspberry Piに保存し、例えば ``security.ty`` という名前を付けます。"
92 |
93 | #: ../project_security.rst:106
94 | msgid "Use the command ``sudo python3 security.py`` to run this code."
95 | msgstr "このコードを実行するには、 ``sudo python3 security.py`` コマンドを使用します。"
96 |
97 | #: ../project_security.rst:106
98 | msgid ":ref:`faq_speaker`"
99 | msgstr ":ref:`faq_speaker`"
100 |
101 | #: ../project_security.rst:108
102 | msgid ""
103 | "Open a web browser and enter ``http://rpi_ip:9000/mjpg`` to view the "
104 | "captured footage. Additionally, you can find the captured face images in "
105 | "``/home/{username}/Pictures/``."
106 | msgstr ""
107 | "ウェブブラウザを開いて ``http://rpi_ip:9000/mjpg`` "
108 | "にアクセスし、キャプチャされた映像を視聴できます。さらに、キャプチャされた顔の画像は ``/home/{username}/Pictures/``"
109 | " で見つけることができます。"
110 |
111 |
--------------------------------------------------------------------------------
/docs/source/locale/ja/LC_MESSAGES/project_ultrasonic.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-05-24 09:22+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: ja\n"
15 | "Language-Team: ja \n"
16 | "Plural-Forms: nplurals=1; plural=0;\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.15.0\n"
21 |
22 | #: ../project_ultrasonic.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr "こんにちは、SunFounderのRaspberry Pi & Arduino & ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。"
28 |
29 | #: ../project_ultrasonic.rst:5
30 | msgid "**Why Join?**"
31 | msgstr " **参加する理由は?**"
32 |
33 | #: ../project_ultrasonic.rst:7
34 | msgid ""
35 | "**Expert Support**: Solve post-sale issues and technical challenges with "
36 | "help from our community and team."
37 | msgstr "**エキスパートサポート**:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。"
38 |
39 | #: ../project_ultrasonic.rst:8
40 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
41 | msgstr ""
42 | "**学び&共有**:ヒントやチュートリアルを交換してスキルを向上させましょう。"
43 |
44 | #: ../project_ultrasonic.rst:9
45 | msgid ""
46 | "**Exclusive Previews**: Get early access to new product announcements and"
47 | " sneak peeks."
48 | msgstr "**独占的なプレビュー**:新製品の発表や先行プレビューに早期アクセスしましょう。"
49 |
50 | #: ../project_ultrasonic.rst:10
51 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
52 | msgstr ""
53 | "**特別割引**:最新製品の独占割引をお楽しみください。"
54 |
55 | #: ../project_ultrasonic.rst:11
56 | msgid ""
57 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
58 | "promotions."
59 | msgstr "**祭りのプロモーションとギフト**:ギフトや祝日のプロモーションに参加しましょう。"
60 |
61 | #: ../project_ultrasonic.rst:13
62 | msgid ""
63 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
64 | "join today!"
65 | msgstr "👉 私たちと一緒に探索し、創造する準備はできていますか?[|link_sf_facebook|]をクリックして今すぐ参加しましょう!"
66 |
67 | #: ../project_ultrasonic.rst:16
68 | msgid "Read from Ultrasonic Module"
69 | msgstr "超音波モジュールからの読み取り"
70 |
71 | #: ../project_ultrasonic.rst:19
72 | msgid ""
73 | "In this project, we use ultrasonic sensors to measure distance and "
74 | "display the readings on the I2C LCD1602."
75 | msgstr "このプロジェクトでは、超音波センサーを使用して距離を測定し、その読み取り値をI2C LCD1602に表示します。"
76 |
77 | #: ../project_ultrasonic.rst:23
78 | msgid "**Steps**"
79 | msgstr "**手順**"
80 |
81 | #: ../project_ultrasonic.rst:25
82 | msgid ""
83 | "In this project, an I2C LCD1602 is used, so it's necessary to download "
84 | "the relevant libraries to make it work."
85 | msgstr "このプロジェクトではI2C LCD1602を使用しているため、関連するライブラリをダウンロードして機能させる必要があります。"
86 |
87 | #: ../project_ultrasonic.rst:32
88 | msgid "Install ``smbus2`` for I2C."
89 | msgstr "I2C用に ``smbus2`` をインストールします。"
90 |
91 | #: ../project_ultrasonic.rst:38
92 | msgid ""
93 | "Save the following code to your Raspberry Pi and give it a name, for "
94 | "example, ``ultrasonic.ty``."
95 | msgstr "以下のコードをRaspberry Piに保存し、例えば ``ultrasonic.ty`` という名前を付けます。"
96 |
97 | #: ../project_ultrasonic.rst:88
98 | msgid "Use the command ``sudo python3 ultrasonic.ty`` to run this code."
99 | msgstr "このコードを実行するには、 ``sudo python3 ultrasonic.ty`` コマンドを使用します。"
100 |
101 |
--------------------------------------------------------------------------------
/docs/source/locale/ja/LC_MESSAGES/projects.po:
--------------------------------------------------------------------------------
1 | # SOME DESCRIPTIVE TITLE.
2 | # Copyright (C) 2023, SunFounder
3 | # This file is distributed under the same license as the SunFounder Robot
4 | # HAT package.
5 | # FIRST AUTHOR , 2023.
6 | #
7 | msgid ""
8 | msgstr ""
9 | "Project-Id-Version: SunFounder Robot HAT \n"
10 | "Report-Msgid-Bugs-To: \n"
11 | "POT-Creation-Date: 2024-05-24 09:22+0800\n"
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 | "Last-Translator: FULL NAME \n"
14 | "Language: ja\n"
15 | "Language-Team: ja \n"
16 | "Plural-Forms: nplurals=1; plural=0;\n"
17 | "MIME-Version: 1.0\n"
18 | "Content-Type: text/plain; charset=utf-8\n"
19 | "Content-Transfer-Encoding: 8bit\n"
20 | "Generated-By: Babel 2.15.0\n"
21 |
22 | #: ../projects.rst:3
23 | msgid ""
24 | "Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 "
25 | "Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, "
26 | "Arduino, and ESP32 with fellow enthusiasts."
27 | msgstr "こんにちは、SunFounderのRaspberry Pi & Arduino & ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。"
28 |
29 | #: ../projects.rst:5
30 | msgid "**Why Join?**"
31 | msgstr " **参加する理由は?**"
32 |
33 | #: ../projects.rst:7
34 | msgid ""
35 | "**Expert Support**: Solve post-sale issues and technical challenges with "
36 | "help from our community and team."
37 | msgstr "**エキスパートサポート**:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。"
38 |
39 | #: ../projects.rst:8
40 | msgid "**Learn & Share**: Exchange tips and tutorials to enhance your skills."
41 | msgstr ""
42 | "**学び&共有**:ヒントやチュートリアルを交換してスキルを向上させましょう。"
43 |
44 | #: ../projects.rst:9
45 | msgid ""
46 | "**Exclusive Previews**: Get early access to new product announcements and"
47 | " sneak peeks."
48 | msgstr "**独占的なプレビュー**:新製品の発表や先行プレビューに早期アクセスしましょう。"
49 |
50 | #: ../projects.rst:10
51 | msgid "**Special Discounts**: Enjoy exclusive discounts on our newest products."
52 | msgstr ""
53 | "**特別割引**:最新製品の独占割引をお楽しみください。"
54 |
55 | #: ../projects.rst:11
56 | msgid ""
57 | "**Festive Promotions and Giveaways**: Take part in giveaways and holiday "
58 | "promotions."
59 | msgstr "**祭りのプロモーションとギフト**:ギフトや祝日のプロモーションに参加しましょう。"
60 |
61 | #: ../projects.rst:13
62 | msgid ""
63 | "👉 Ready to explore and create with us? Click [|link_sf_facebook|] and "
64 | "join today!"
65 | msgstr "👉 私たちと一緒に探索し、創造する準備はできていますか?[|link_sf_facebook|]をクリックして今すぐ参加しましょう!"
66 |
67 | #: ../projects.rst:16
68 | msgid "Some Projects"
69 | msgstr "いくつかのプロジェクト"
70 |
71 | #: ../projects.rst:18
72 | msgid ""
73 | "Here, you'll find a collection of fascinating projects, all implemented "
74 | "using the Robot HAT. We provide you with detailed code, giving you the "
75 | "opportunity to try these projects out for yourself."
76 | msgstr ""
77 | "ここでは、Robot "
78 | "HATを使用して実装された魅力的なプロジェクトのコレクションを紹介します。詳細なコードを提供し、これらのプロジェクトを自分で試す機会を提供します。"
79 |
80 |
--------------------------------------------------------------------------------
/docs/source/project_control_motor_servo.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | Control Servos and Motors
16 | ============================
17 |
18 | In this project, we have 12 servos and two motors working simultaneously.
19 |
20 | .. image:: img/servo_motor.jpg
21 | :width: 500
22 | :align: center
23 |
24 | However, it's important to note that if your servos and motors have a high starting current, it's recommended to start them separately to avoid insufficient power supply current, which could lead to the Raspberry Pi restarting.
25 |
26 | **Code**
27 |
28 | .. code-block:: python
29 |
30 | from robot_hat import Servo, Motors
31 | import time
32 |
33 | # Create objects for 12 servos
34 | servos = [Servo(f"P{i}") for i in range(12)]
35 |
36 | # Create motor object
37 | motors = Motors()
38 |
39 | def initialize_servos():
40 | """Set initial angle of all servos to 0."""
41 | for servo in servos:
42 | servo.angle(-90)
43 | time.sleep(0.1) # Wait for servos to reach the initial position
44 | time.sleep(1)
45 |
46 |
47 | def sweep_servos(angle_from, angle_to, step):
48 | """Control all servos to sweep from a start angle to an end angle."""
49 | if angle_from < angle_to:
50 | range_func = range(angle_from, angle_to + 1, step)
51 | else:
52 | range_func = range(angle_from, angle_to - 1, -step)
53 |
54 | for angle in range_func:
55 | for servo in servos:
56 | servo.angle(angle)
57 | time.sleep(0.05)
58 |
59 | def control_motors_and_servos():
60 | """Control motors and servos in synchronization."""
61 | try:
62 | while True:
63 | # Motors rotate forward and servos sweep from -90 to 90 degrees
64 | motors[1].speed(80)
65 | time.sleep(0.01)
66 | motors[2].speed(80)
67 | time.sleep(0.01)
68 | sweep_servos(-90, 90, 5)
69 | time.sleep(1)
70 |
71 | # Motors rotate backward and servos sweep from 90 to -90 degrees
72 | motors[1].speed(-80)
73 | time.sleep(0.01)
74 | motors[2].speed(-80)
75 | time.sleep(0.01)
76 | sweep_servos(90, -90, 5)
77 | time.sleep(1)
78 | except KeyboardInterrupt:
79 | # Stop motors when Ctrl+C is pressed
80 | motors.stop()
81 | print("Motors stopped.")
82 |
83 | # Initialize servos to their initial position
84 | initialize_servos()
85 |
86 | # Control motors and servos
87 | control_motors_and_servos()
88 |
89 |
90 |
--------------------------------------------------------------------------------
/docs/source/project_diy_car.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | DIY Car
16 | ==============
17 |
18 | In addition to being suitable for simple experiments, the Robot HAT is ideal for use as a central controller in robotics, such as for smart cars.
19 |
20 | In this project, we built a simple line-following car.
21 |
22 | .. image:: img/diy_car.jpg
23 |
24 | **Code**
25 |
26 | .. code-block:: python
27 |
28 | from robot_hat import Motors, Pin
29 | import time
30 |
31 | # Create motor object
32 | motors = Motors()
33 |
34 | # Initialize line tracking sensor
35 | line_track = Pin('D0')
36 |
37 | def main():
38 | while True:
39 | # print("value", line_track.value())
40 | # time.sleep(0.01)
41 | if line_track.value() == 1:
42 | # If line is detected
43 | motors[1].speed(-60) # Motor 1 forward
44 | motors[2].speed(20) # Motor 2 backward
45 | time.sleep(0.01)
46 | else:
47 | # If line is not detected
48 | motors[1].speed(-20) # Motor 1 backward
49 | motors[2].speed(60) # Motor 2 forward
50 | time.sleep(0.01)
51 |
52 | def destroy():
53 | # Stop motors when Ctrl+C is pressed
54 | motors.stop()
55 | print("Motors stopped.")
56 |
57 | if __name__ == '__main__':
58 | try:
59 | main()
60 | except KeyboardInterrupt:
61 | destroy()
62 |
--------------------------------------------------------------------------------
/docs/source/project_photoresistor.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | Read from Photoresistor Module
16 | ================================
17 |
18 | In this project, we detect the light intensity and display on the I2C LCD1602.
19 |
20 | .. image:: img/photoresistor.jpg
21 |
22 | **Steps**
23 |
24 | #. In this project, an I2C LCD1602 is used, so it's necessary to download the relevant libraries to make it work.
25 |
26 | .. code-block:: shell
27 |
28 | cd ~/
29 | wget https://github.com/sunfounder/raphael-kit/blob/master/python/LCD1602.py
30 |
31 | #. Install ``smbus2`` for I2C.
32 |
33 | .. code-block:: shell
34 |
35 | sudo pip3 install smbus2
36 |
37 | #. Save the following code to your Raspberry Pi and give it a name, for example, ``photoresistor.ty``.
38 |
39 | .. code-block:: python
40 |
41 | from robot_hat import ADC
42 | import LCD1602
43 | import time
44 |
45 | # Create an ADC object to read the value from the photoresistor
46 | a0 = ADC(0)
47 |
48 | def setup():
49 | # Initialize the LCD1602
50 | LCD1602.init(0x27, 1)
51 | time.sleep(2)
52 |
53 | def destroy():
54 | # Clear the LCD display
55 | LCD1602.clear()
56 |
57 | def loop():
58 | while True:
59 | # Read the value from the photoresistor
60 | value0 = a0.read()
61 | # Display the read value on the LCD
62 | LCD1602.write(0, 0, 'Value: %d ' % value0)
63 | # Reduce the refresh rate to update once per second
64 | time.sleep(0.2)
65 |
66 | if __name__ == '__main__':
67 | setup()
68 | try:
69 | loop()
70 | except KeyboardInterrupt:
71 | destroy()
72 | except Exception as e:
73 | # Clear the LCD and print error message in case of an exception
74 | destroy()
75 | print("Error:", e)
76 |
77 |
78 | #. Use the command ``sudo python3 photoresistor.ty`` to run this code.
79 |
80 |
--------------------------------------------------------------------------------
/docs/source/project_plant_monitor.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | Plant Monitor
16 | ======================
17 |
18 | In this project, we detect both light intensity and soil moisture levels, and display them on the I2C LCD1602 . When you feel that the soil moisture is insufficient, you can press the button module to water the potted plant.
19 |
20 | .. image:: img/plant_monitor.jpg
21 |
22 | **Steps**
23 |
24 | #. In this project, an I2C LCD1602 is used, so it's necessary to download the relevant libraries to make it work.
25 |
26 | .. code-block:: shell
27 |
28 | cd ~/
29 | wget https://github.com/sunfounder/raphael-kit/blob/master/python/LCD1602.py
30 |
31 | #. Install ``smbus2`` for I2C.
32 |
33 | .. code-block:: shell
34 |
35 | sudo pip3 install smbus2
36 |
37 | #. Save the following code to your Raspberry Pi and give it a name, for example, ``plant_monitor.ty``.
38 |
39 | .. code-block:: python
40 |
41 | from robot_hat import ADC, Motors, Pin
42 | import LCD1602
43 | import time
44 | import threading
45 |
46 | from robot_hat.utils import reset_mcu
47 |
48 | reset_mcu()
49 | time.sleep(.1)
50 |
51 |
52 | # Initialize objects
53 | light_sensor = ADC(1)
54 | moisture_sensor = ADC(0)
55 | motors = Motors()
56 | button = Pin('D0')
57 |
58 | # Thread running flag
59 | running = True
60 |
61 | def init_lcd():
62 | LCD1602.init(0x27, 1)
63 | time.sleep(2)
64 |
65 | def update_lcd(light_value, moisture_value):
66 | LCD1602.write(0, 0, 'Light: %d ' % light_value)
67 | LCD1602.write(0, 1, 'Moisture: %d ' % moisture_value)
68 |
69 | def read_sensors():
70 | light_value = light_sensor.read()
71 | time.sleep(0.2)
72 | moisture_value = moisture_sensor.read()
73 | time.sleep(0.2)
74 | return light_value, moisture_value
75 |
76 | def control_motor():
77 | global running
78 | while running:
79 | button_pressed = button.value() == 0
80 | if button_pressed:
81 | motors[1].speed(80)
82 | time.sleep(0.1)
83 | else:
84 | motors[1].speed(0)
85 | time.sleep(0.1)
86 | time.sleep(0.1)
87 |
88 | def setup():
89 | init_lcd()
90 |
91 | def destroy():
92 | global running
93 | running = False
94 | LCD1602.clear()
95 |
96 | def loop():
97 | global running
98 | while running:
99 | light_value, moisture_value = read_sensors()
100 | update_lcd(light_value, moisture_value)
101 | time.sleep(.2)
102 |
103 | if __name__ == '__main__':
104 | try:
105 | setup()
106 | motor_thread = threading.Thread(target=control_motor)
107 | motor_thread.start()
108 | loop()
109 | except KeyboardInterrupt:
110 | motor_thread.join() # Wait for motor_thread to finish
111 | print("Program stopped")
112 | except Exception as e:
113 | print("Error:", e)
114 | finally:
115 | motors[1].speed(0)
116 | time.sleep(.1)
117 | destroy()
118 | print('end')
119 |
120 | #. Use the command ``sudo python3 plant_monitor.ty`` to run this code.
121 |
122 |
--------------------------------------------------------------------------------
/docs/source/project_say_something.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | Say Something
16 | ====================
17 |
18 |
19 | In this section, you'll learn how to convert text into speech and have Robot HAT speak it aloud.
20 |
21 | **Steps**
22 |
23 | #. We retrieve text from the command line to enable Robot HAT to articulate it. To achieve this, save the following code as a ``.py`` file, such as ``tts.py``.
24 |
25 |
26 | .. code-block:: python
27 |
28 | import sys
29 | from robot_hat import TTS
30 |
31 | # Check if there are enough command line arguments
32 | if len(sys.argv) > 1:
33 | text_to_say = sys.argv[1] # Get the first argument passed from the command line
34 | else:
35 | text_to_say = "Hello SunFounder" # Default text if no arguments are provided
36 |
37 | # Initialize the TTS class
38 | tts = TTS(lang='en-US')
39 |
40 | # Read the text
41 | tts.say(text_to_say)
42 |
43 | # Display all supported languages
44 | print(tts.supported_lang())
45 |
46 | #. To make Robot HAT vocalize a specific sentence, you can use the following command: ``sudo python3 tts.py "any text"`` - simply replace ``"any text"`` with the desired phrase.
47 |
48 | .. note::
49 |
50 | * :ref:`faq_speaker`
51 |
52 |
--------------------------------------------------------------------------------
/docs/source/project_security.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | Security System
16 | =======================
17 |
18 | In this project, we've created a simple security system. The PIR sensor detects if someone passes by, and then the camera activates. If a face is detected, it takes a picture and simultaneously delivers a warning message.
19 |
20 | .. image:: img/camera.jpg
21 |
22 | **Steps**
23 |
24 | #. Install the ``vilib`` library for face detection.
25 |
26 | .. code-block:: shell
27 |
28 | cd ~/
29 | git clone -b picamera2 https://github.com/sunfounder/vilib.git
30 | cd vilib
31 | sudo python3 install.py
32 |
33 | #. Save the following code to your Raspberry Pi and give it a name, for example, ``security.ty``.
34 |
35 |
36 | .. code-block:: python
37 |
38 | import os
39 | from time import sleep, time, strftime, localtime
40 | from vilib import Vilib
41 | from robot_hat import Pin, TTS
42 |
43 |
44 | # Initialize the TTS class
45 | tts = TTS(lang='en-US')
46 |
47 | # Display all supported languages
48 | print(tts.supported_lang())
49 |
50 | # Initialize the PIR sensor
51 | pir = Pin('D0')
52 |
53 | def camera_start():
54 | Vilib.camera_start()
55 | Vilib.display()
56 | Vilib.face_detect_switch(True)
57 |
58 | def take_photo():
59 | _time = strftime('%Y-%m-%d-%H-%M-%S', localtime(time()))
60 | name = f'photo_{_time}'
61 | username = os.getlogin()
62 | path = f"/home/{username}/Pictures/"
63 | Vilib.take_photo(name, path)
64 | print(f'Photo saved as {path}{name}.jpg')
65 |
66 | def main():
67 | motion_detected = False
68 | while True:
69 | # Check for motion
70 | if pir.value() == 1:
71 | if not motion_detected:
72 | print("Motion detected! Initializing camera...")
73 | camera_start()
74 | motion_detected = True
75 | sleep(2) # Stabilization delay to confirm motion
76 |
77 | # Check for human face and take a photo
78 | if Vilib.detect_obj_parameter['human_n'] != 0:
79 | take_photo()
80 | # Read the text
81 | tts.say("Security alert: Unrecognized Individual detected. Please verify identity")
82 | sleep(2) # Delay after taking a photo
83 |
84 | # If no motion is detected, turn off the camera
85 | elif motion_detected:
86 | print("No motion detected. Finalizing camera...")
87 | Vilib.camera_close()
88 | motion_detected = False
89 | sleep(2) # Delay before re-enabling motion detection
90 |
91 | sleep(0.1) # Short delay to prevent CPU overuse
92 |
93 | def destroy():
94 | Vilib.camera_close()
95 | print("Camera and face detection stopped.")
96 |
97 | if __name__ == '__main__':
98 | try:
99 | main()
100 | except KeyboardInterrupt:
101 | destroy()
102 |
103 | #. Use the command ``sudo python3 security.py`` to run this code.
104 | .. note::
105 |
106 | * :ref:`faq_speaker`
107 |
108 | #. Open a web browser and enter ``http://rpi_ip:9000/mjpg`` to view the captured footage. Additionally, you can find the captured face images in ``/home/{username}/Pictures/``.
109 |
110 | .. image:: img/browser_camera.jpg
111 |
112 |
--------------------------------------------------------------------------------
/docs/source/project_ultrasonic.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | Read from Ultrasonic Module
16 | ===============================
17 |
18 |
19 | In this project, we use ultrasonic sensors to measure distance and display the readings on the I2C LCD1602.
20 |
21 | .. image:: img/ultrasonic.jpg
22 |
23 | **Steps**
24 |
25 | #. In this project, an I2C LCD1602 is used, so it's necessary to download the relevant libraries to make it work.
26 |
27 | .. code-block:: shell
28 |
29 | cd ~/
30 | wget https://github.com/sunfounder/raphael-kit/blob/master/python/LCD1602.py
31 |
32 | #. Install ``smbus2`` for I2C.
33 |
34 | .. code-block:: shell
35 |
36 | sudo pip3 install smbus2
37 |
38 | #. Save the following code to your Raspberry Pi and give it a name, for example, ``ultrasonic.ty``.
39 |
40 | .. code-block:: python
41 |
42 | from robot_hat import ADC, Ultrasonic, Pin
43 | import LCD1602
44 | import time
45 |
46 | # Create ADC object for photoresistor
47 | a0 = ADC(0)
48 |
49 | # Create Ultrasonic object
50 | us = Ultrasonic(Pin("D2"), Pin("D3")) //Trig to digital pin 2, echo to pin 3
51 |
52 | def setup():
53 | # Initialize LCD1602
54 | LCD1602.init(0x27, 1)
55 | # Initial message on LCD
56 | LCD1602.write(0, 0, 'Measuring...')
57 | time.sleep(2)
58 |
59 | def destroy():
60 | # Clear the LCD display
61 | LCD1602.clear()
62 |
63 | def loop():
64 | while True:
65 | # Read distance from ultrasonic sensor
66 | distance = us.read()
67 | # Display the distance on the LCD
68 | if distance != -1:
69 | # Display the valid distance on the LCD
70 | LCD1602.write(0, 0, 'Dist: %.2f cm ' % distance)
71 |
72 | # Update every 0.5 seconds
73 | time.sleep(0.2)
74 |
75 | if __name__ == '__main__':
76 | setup()
77 | try:
78 | loop()
79 | except KeyboardInterrupt:
80 | destroy()
81 | except Exception as e:
82 | # Clear the LCD and print error message in case of an exception
83 | destroy()
84 | print("Error:", e)
85 |
86 |
87 |
88 | #. Use the command ``sudo python3 ultrasonic.ty`` to run this code.
89 |
90 |
--------------------------------------------------------------------------------
/docs/source/projects.rst:
--------------------------------------------------------------------------------
1 | .. note::
2 |
3 | Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.
4 |
5 | **Why Join?**
6 |
7 | - **Expert Support**: Solve post-sale issues and technical challenges with help from our community and team.
8 | - **Learn & Share**: Exchange tips and tutorials to enhance your skills.
9 | - **Exclusive Previews**: Get early access to new product announcements and sneak peeks.
10 | - **Special Discounts**: Enjoy exclusive discounts on our newest products.
11 | - **Festive Promotions and Giveaways**: Take part in giveaways and holiday promotions.
12 |
13 | 👉 Ready to explore and create with us? Click [|link_sf_facebook|] and join today!
14 |
15 | Some Projects
16 | =================
17 |
18 | Here, you'll find a collection of fascinating projects, all implemented using the Robot HAT.
19 | We provide you with detailed code, giving you the opportunity to try these projects out for yourself.
20 |
21 | .. toctree::
22 | :maxdepth: 1
23 |
24 | project_control_motor_servo
25 | project_diy_car
26 | project_photoresistor
27 | project_ultrasonic
28 | project_plant_monitor
29 | project_say_something
30 | project_security
31 | community_tutorials
32 |
33 |
--------------------------------------------------------------------------------
/dtoverlays/sunfounder-robothat5.dtbo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/dtoverlays/sunfounder-robothat5.dtbo
--------------------------------------------------------------------------------
/dtoverlays/sunfounder-servohat+.dtbo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunfounder/robot-hat/214e0fc6bac953dbe75b99cc53c0de65ab932adb/dtoverlays/sunfounder-servohat+.dtbo
--------------------------------------------------------------------------------
/pyproject.toml:
--------------------------------------------------------------------------------
1 |
2 | [build-system]
3 | requires = ["setuptools >= 61.0", "wheel"]
4 | build-backend = "setuptools.build_meta"
5 |
6 | [project]
7 | name = "robot_hat"
8 | authors = [
9 | { name="sunfounder", email="service@sunfounder.com" },
10 | ]
11 | description = "Robot Hat Python library for Raspberry Pi"
12 | readme = "README.md"
13 | requires-python = ">=3.7"
14 | classifiers = [
15 | "Programming Language :: Python :: 3",
16 | "License :: OSI Approved :: GNU General Public License v3 (GPLv3)",
17 | "Operating System :: POSIX :: Linux",
18 | ]
19 | keywords = ["robot_hat", "sunfounder"]
20 | dynamic = ["version"]
21 |
22 | dependencies = [
23 |
24 | ]
25 |
26 | [project.scripts]
27 | robot_hat = "robot_hat:__main__"
28 |
29 | [project.urls]
30 | Homepage = "https://www.sunfounder.com/products/sunfounder-robot-hat-expansion-board-designed-for-raspberry-pi"
31 | Documentation = "https://docs.sunfounder.com/projects/robot-hat-v4/en/latest/"
32 | Repository = "https://github.com/sunfounder/robot-hat/tree/dev"
33 | Issues = "https://github.com/sunfounder/robot-hat/issues"
34 | Changelog = "https://github.com/sunfounder/robot-hat/commits/dev/"
35 |
36 | [tool.setuptools.packages.find]
37 | include = ["robot_hat"]
38 | exclude = ["setup.py", "docs", 'tests*', 'examples', 'workspace']
39 |
40 | [tool.setuptools.dynamic]
41 | version = {attr = "robot_hat.version.__version__"}
42 |
43 |
44 |
--------------------------------------------------------------------------------
/robot_hat/__init__.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python3
2 | """
3 | Robot Hat Library
4 | """
5 | from .adc import ADC
6 | from .filedb import fileDB
7 | from .config import Config
8 | from .i2c import I2C
9 | from .modules import *
10 | from .music import Music
11 | from .motor import Motor, Motors
12 | from .pin import Pin
13 | from .pwm import PWM
14 | from .servo import Servo
15 | from .tts import TTS
16 | from .utils import *
17 | from .robot import Robot
18 | from .version import __version__
19 |
20 | from .device import Devices
21 | __device__ = Devices()
22 |
23 | def __usage__():
24 | print('''
25 | Usage: robot_hat [option]
26 |
27 | reset_mcu reset mcu on robot-hat
28 | enable_speaker enable speaker
29 | disable_speaker disable speaker
30 | version get robot-hat libray version
31 | info get hat info
32 | ''')
33 | quit()
34 |
35 | def get_firmware_version():
36 | ADDR = [0x14, 0x15]
37 | VERSSION_REG_ADDR = 0x05
38 | i2c = I2C(ADDR)
39 | version = i2c.mem_read(3, VERSSION_REG_ADDR)
40 | return version
41 |
42 | def __main__():
43 | import sys
44 | import os
45 | if len(sys.argv) == 2:
46 | if sys.argv[1] == "reset_mcu":
47 | reset_mcu()
48 | info("Onboard MCU reset.")
49 | elif sys.argv[1] == "enable_speaker":
50 | info(f"Enable Robot-HAT speaker.")
51 | utils.enable_speaker()
52 | elif sys.argv[1] == "disable_speaker":
53 | info(f"Disable Robot-HAT speaker.")
54 | utils.disable_speaker()
55 | elif sys.argv[1] == "version":
56 | info(f"robot-hat library version: {__version__}")
57 | elif sys.argv[1] == "info":
58 | info(f'HAT name: {__device__.name}')
59 | info(f'PCB ID: O{__device__.product_id}V{__device__.product_ver}')
60 | info(f'Vendor: {__device__.vendor}')
61 | firmware_ver = get_firmware_version()
62 | firmware_ver = f'{firmware_ver[0]}.{firmware_ver[1]}.{firmware_ver[2]}'
63 | info(f"Firmare version: {firmware_ver}")
64 | else:
65 | warn("Unknown option.")
66 | __usage__()
67 | else:
68 | __usage__()
69 |
--------------------------------------------------------------------------------
/robot_hat/adc.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python3
2 | from .i2c import I2C
3 |
4 |
5 | class ADC(I2C):
6 | """
7 | Analog to digital converter
8 | """
9 | ADDR = [0x14, 0x15]
10 |
11 | def __init__(self, chn, address=None, *args, **kwargs):
12 | """
13 | Analog to digital converter
14 |
15 | :param chn: channel number (0-7/A0-A7)
16 | :type chn: int/str
17 | """
18 | if address is not None:
19 | super().__init__(address, *args, **kwargs)
20 | else:
21 | super().__init__(self.ADDR, *args, **kwargs)
22 | self._debug(f'ADC device address: 0x{self.address:02X}')
23 |
24 | if isinstance(chn, str):
25 | # If chn is a string, assume it's a pin name, remove A and convert to int
26 | if chn.startswith("A"):
27 | chn = int(chn[1:])
28 | else:
29 | raise ValueError(
30 | f'ADC channel should be between [A0, A7], not "{chn}"')
31 | # Make sure channel is between 0 and 7
32 | if chn < 0 or chn > 7:
33 | raise ValueError(
34 | f'ADC channel should be between [0, 7], not "{chn}"')
35 | chn = 7 - chn
36 | # Convert to Register value
37 | self.chn = chn | 0x10
38 |
39 | def read(self):
40 | """
41 | Read the ADC value
42 |
43 | :return: ADC value(0-4095)
44 | :rtype: int
45 | """
46 | # Write register address
47 | self.write([self.chn, 0, 0])
48 | # Read values
49 | msb, lsb = super().read(2)
50 |
51 | # Combine MSB and LSB
52 | value = (msb << 8) + lsb
53 | self._debug(f"Read value: {value}")
54 | return value
55 |
56 | def read_voltage(self):
57 | """
58 | Read the ADC value and convert to voltage
59 |
60 | :return: Voltage value(0-3.3(V))
61 | :rtype: float
62 | """
63 | # Read ADC value
64 | value = self.read()
65 | # Convert to voltage
66 | voltage = value * 3.3 / 4095
67 | self._debug(f"Read voltage: {voltage}")
68 | return voltage
69 |
--------------------------------------------------------------------------------
/robot_hat/basic.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | #!/usr/bin/env python3
3 | import logging
4 | import time
5 |
6 |
7 | class _Basic_class(object):
8 | """
9 | Basic Class for all classes
10 |
11 | with debug function
12 | """
13 | _class_name = '_Basic_class'
14 | DEBUG_LEVELS = {'debug': logging.DEBUG,
15 | 'info': logging.INFO,
16 | 'warning': logging.WARNING,
17 | 'error': logging.ERROR,
18 | 'critical': logging.CRITICAL,
19 | }
20 | """Debug level"""
21 | DEBUG_NAMES = ['critical', 'error', 'warning', 'info', 'debug']
22 | """Debug level names"""
23 |
24 | def __init__(self, debug_level='warning'):
25 | """
26 | Initialize the basic class
27 |
28 | :param debug_level: debug level, 0(critical), 1(error), 2(warning), 3(info) or 4(debug)
29 | :type debug_level: str/int
30 | """
31 | self.logger = logging.getLogger(f"self._class_name-{time.time()}")
32 | self.ch = logging.StreamHandler()
33 | form = "%(asctime)s [%(levelname)s] %(message)s"
34 | self.formatter = logging.Formatter(form)
35 | self.ch.setFormatter(self.formatter)
36 | self.logger.addHandler(self.ch)
37 | self._debug = self.logger.debug
38 | self._info = self.logger.info
39 | self._warning = self.logger.warning
40 | self._error = self.logger.error
41 | self._critical = self.logger.critical
42 | self.debug_level = debug_level
43 |
44 | @property
45 | def debug_level(self):
46 | """Debug level"""
47 | return self._debug_level
48 |
49 | @debug_level.setter
50 | def debug_level(self, debug):
51 | """Debug level"""
52 | if debug in range(5):
53 | self._debug_level = self.DEBUG_NAMES[debug]
54 | elif debug in self.DEBUG_NAMES:
55 | self._debug_level = debug
56 | else:
57 | raise ValueError(
58 | f'Debug value must be 0(critical), 1(error), 2(warning), 3(info) or 4(debug), not "{debug}".')
59 | self.logger.setLevel(self.DEBUG_LEVELS[self._debug_level])
60 | self.ch.setLevel(self.DEBUG_LEVELS[self._debug_level])
61 | self._debug(f'Set logging level to [{self._debug_level}]')
62 |
--------------------------------------------------------------------------------
/robot_hat/device.py:
--------------------------------------------------------------------------------
1 | import os
2 |
3 | class Devices():
4 | HAT_DEVICE_TREE = "/proc/device-tree/"
5 | HAT_UUIDs = [
6 | "9daeea78-0000-076e-0032-582369ac3e02", # robothat5 1902v50
7 | ]
8 |
9 | DEVICES = {
10 | "robot_hat_v4x": {
11 | "uuid": None,
12 | "speaker_enbale_pin": 20,
13 | "motor_mode": 1,
14 | },
15 | "robot_hat_v5x": {
16 | "uuid": HAT_UUIDs[0],
17 | "speaker_enbale_pin": 12,
18 | "motor_mode": 2,
19 | }
20 | }
21 |
22 | name = ""
23 | product_id = 0
24 | product_ver = 0
25 | uuid = ""
26 | vendor = ""
27 | spk_en = 20
28 | motor_mode = 1
29 |
30 | def __init__(self):
31 | hat_path = None
32 | for file in os.listdir('/proc/device-tree/'):
33 | if 'hat' in file:
34 | # print("hat detected")
35 | if os.path.exists(f"/proc/device-tree/{file}/uuid") \
36 | and os.path.isfile(f"/proc/device-tree/{file}/uuid"):
37 | # print("uuid detected")
38 | with open(f"/proc/device-tree/{file}/uuid", "r") as f:
39 | uuid = f.read()[:-1] # [:-1] rm \x00
40 | if uuid in self.HAT_UUIDs:
41 | hat_path = f"/proc/device-tree/{file}"
42 | break
43 |
44 | if hat_path is not None:
45 | with open(f"{hat_path}/product", "r") as f:
46 | self.name = f.read()
47 | with open(f"{hat_path}/product_id", "r") as f:
48 | self.product_id = f.read()[:-1] # [:-1] rm \x00
49 | self.product_id = int(self.product_id, 16)
50 | with open(f"{hat_path}/product_ver", "r") as f:
51 | self.product_ver = f.read()[:-1]
52 | self.product_ver = int(self.product_ver, 16)
53 | with open(f"{hat_path}/uuid", "r") as f:
54 | self.uuid = f.read()[:-1] # [:-1] rm \x00
55 | with open(f"{hat_path}/vendor", "r") as f:
56 | self.vendor = f.read()
57 |
58 | for device in self.DEVICES:
59 | if self.DEVICES[device]['uuid'] == self.uuid:
60 | self.spk_en = self.DEVICES[device]["speaker_enbale_pin"]
61 | self.motor_mode = self.DEVICES[device]["motor_mode"]
62 | break
63 |
64 | if __name__ == "__main__":
65 | device = Devices()
66 | print(f'name: {device.name}')
67 | print(f'product_id: {device.product_id}')
68 | print(f'product_ver: {device.product_ver}')
69 | print(f'vendor: {device.vendor}')
70 | print(f'uuid: {device.uuid}')
71 | print(f'speaker_enbale_pin: {device.spk_en}')
72 | print(f'motor_mode: {device.motor_mode}')
73 |
--------------------------------------------------------------------------------
/robot_hat/filedb.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python3
2 | '''
3 | **********************************************************************
4 | * Filename : filedb.py
5 | * Description : A simple file based database.
6 | * Author : Cavon
7 | * Brand : SunFounder
8 | * E-mail : service@sunfounder.com
9 | * Website : www.sunfounder.com
10 | * Update : Cavon 2016-09-13 New release
11 | **********************************************************************
12 | '''
13 | import os
14 | from time import sleep
15 |
16 |
17 | class fileDB(object):
18 | """A file based database.
19 |
20 | A file based database, read and write arguements in the specific file.
21 | """
22 | def __init__(self, db:str, mode:str=None, owner:str=None):
23 | '''
24 | Init the db_file is a file to save the datas.
25 |
26 | :param db: the file to save the datas.
27 | :type db: str
28 | :param mode: the mode of the file.
29 | :type mode: str
30 | :param owner: the owner of the file.
31 | :type owner: str
32 | '''
33 |
34 | self.db = db
35 | # Check if db_file is existed, otherwise create one
36 | if self.db != None:
37 | self.file_check_create(db, mode, owner)
38 | else:
39 | raise ValueError('db: Missing file path parameter.')
40 |
41 |
42 | def file_check_create(self, file_path:str, mode:str=None, owner:str=None):
43 | """
44 | Check if file is existed, otherwise create one.
45 |
46 | :param file_path: the file to check
47 | :type file_path: str
48 | :param mode: the mode of the file.
49 | :type mode: str
50 | :param owner: the owner of the file.
51 | :type owner: str
52 | """
53 | dir = file_path.rsplit('/',1)[0]
54 | try:
55 | if os.path.exists(file_path):
56 | if not os.path.isfile(file_path):
57 | print('Could not create file, there is a folder with the same name')
58 | return
59 | else:
60 | if os.path.exists(dir):
61 | if not os.path.isdir(dir):
62 | print('Could not create directory, there is a file with the same name')
63 | return
64 | else:
65 | os.makedirs(dir, mode=0o754)
66 | sleep(0.001)
67 |
68 | with open(file_path, 'w') as f:
69 | f.write("# robot-hat config and calibration value of robots\n\n")
70 |
71 | if mode != None:
72 | os.popen('sudo chmod %s %s'%(mode, file_path))
73 | if owner != None:
74 | os.popen('sudo chown -R %s:%s %s'%(owner, owner, dir))
75 | except Exception as e:
76 | raise(e)
77 |
78 | def get(self, name, default_value=None):
79 | """
80 | Get value with data's name
81 |
82 | :param name: the name of the arguement
83 | :type name: str
84 | :param default_value: the default value of the arguement
85 | :type default_value: str
86 | :return: the value of the arguement
87 | :rtype: str
88 | """
89 | try:
90 | conf = open(self.db,'r')
91 | lines=conf.readlines()
92 | conf.close()
93 | file_len=len(lines)-1
94 | flag = False
95 | # Find the arguement and set the value
96 | for i in range(file_len):
97 | if lines[i][0] != '#':
98 | if lines[i].split('=')[0].strip() == name:
99 | value = lines[i].split('=')[1].replace(' ', '').strip()
100 | flag = True
101 | if flag:
102 | return value
103 | else:
104 | return default_value
105 | except FileNotFoundError:
106 | conf = open(self.db,'w')
107 | conf.write("")
108 | conf.close()
109 | return default_value
110 | except :
111 | return default_value
112 |
113 | def set(self, name, value):
114 | """
115 | Set value by with name. Or create one if the arguement does not exist
116 |
117 | :param name: the name of the arguement
118 | :type name: str
119 | :param value: the value of the arguement
120 | :type value: str
121 | """
122 | # Read the file
123 | conf = open(self.db,'r')
124 | lines=conf.readlines()
125 | conf.close()
126 | file_len=len(lines)-1
127 | flag = False
128 | # Find the arguement and set the value
129 | for i in range(file_len):
130 | if lines[i][0] != '#':
131 | if lines[i].split('=')[0].strip() == name:
132 | lines[i] = '%s = %s\n' % (name, value)
133 | flag = True
134 | # If arguement does not exist, create one
135 | if not flag:
136 | lines.append('%s = %s\n\n' % (name, value))
137 |
138 | # Save the file
139 | conf = open(self.db,'w')
140 | conf.writelines(lines)
141 | conf.close()
142 |
143 | if __name__ == '__main__':
144 | db = fileDB('/opt/robot-hat/test2.config')
145 |
146 | db.set('a', '1')
147 | db.set('b', '2')
148 |
149 | print(db.get('a'))
150 | print(db.get('c'))
151 |
152 |
--------------------------------------------------------------------------------
/robot_hat/servo.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python3
2 | from .pwm import PWM
3 | from .utils import mapping
4 |
5 |
6 | class Servo(PWM):
7 | """Servo motor class"""
8 | MAX_PW = 2500
9 | MIN_PW = 500
10 | FREQ = 50
11 | PERIOD = 4095
12 |
13 | def __init__(self, channel, address=None, *args, **kwargs):
14 | """
15 | Initialize the servo motor class
16 |
17 | :param channel: PWM channel number(0-14/P0-P14)
18 | :type channel: int/str
19 | """
20 | super().__init__(channel, address, *args, **kwargs)
21 | self.period(self.PERIOD)
22 | prescaler = self.CLOCK / self.FREQ / self.PERIOD
23 | self.prescaler(prescaler)
24 |
25 | def angle(self, angle):
26 | """
27 | Set the angle of the servo motor
28 |
29 | :param angle: angle(-90~90)
30 | :type angle: float
31 | """
32 | if not (isinstance(angle, int) or isinstance(angle, float)):
33 | raise ValueError(
34 | "Angle value should be int or float value, not %s" % type(angle))
35 | if angle < -90:
36 | angle = -90
37 | if angle > 90:
38 | angle = 90
39 | self._debug(f"Set angle to: {angle}")
40 | pulse_width_time = mapping(angle, -90, 90, self.MIN_PW, self.MAX_PW)
41 | self._debug(f"Pulse width: {pulse_width_time}")
42 | self.pulse_width_time(pulse_width_time)
43 |
44 | def pulse_width_time(self, pulse_width_time):
45 | """
46 | Set the pulse width of the servo motor
47 |
48 | :param pulse_width_time: pulse width time(500~2500)
49 | :type pulse_width_time: float
50 | """
51 | if pulse_width_time > self.MAX_PW:
52 | pulse_width_time = self.MAX_PW
53 | if pulse_width_time < self.MIN_PW:
54 | pulse_width_time = self.MIN_PW
55 |
56 | pwr = pulse_width_time / 20000
57 | self._debug(f"pulse width rate: {pwr}")
58 | value = int(pwr * self.PERIOD)
59 | self._debug(f"pulse width value: {value}")
60 | self.pulse_width(value)
61 |
--------------------------------------------------------------------------------
/robot_hat/version.py:
--------------------------------------------------------------------------------
1 | __version__ = '2.3.5'
2 |
--------------------------------------------------------------------------------
/setup.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python3
2 | from os import path
3 | import sys
4 | import os
5 |
6 | print('\033[0;33mThe "setup.py" installation method is planned to be abandoned.\n'
7 | 'Please execute "install.py" to install.\n\033[0m')
8 |
9 | if 'install' in sys.argv:
10 | here = path.abspath(path.dirname(__file__))
11 | os.chdir(here)
12 | args = ' '.join(sys.argv[1:])
13 | os.system(f'python3 install.py {args}')
14 |
15 | exit()
16 |
17 | # necessary for pip3 install ./ ,
18 | # if you need both `setup.py`` and `pyproject.toml`` to exist
19 | from setuptools import setup
20 | setup()
21 |
22 |
--------------------------------------------------------------------------------
/tests/button_event_test.py:
--------------------------------------------------------------------------------
1 | from robot_hat import Pin
2 | import time
3 |
4 | btn = Pin("D0") # IO17
5 |
6 | def pressed_handler():
7 | print(f"Pressed - {time.time()}")
8 |
9 | def released_handler():
10 | print(f"Released - {time.time()}")
11 |
12 | def both_handler():
13 | print(f"xxx - {time.time()}")
14 |
15 | btn.irq(handler=pressed_handler, trigger=Pin.IRQ_FALLING, bouncetime=20)
16 | print(btn)
17 | btn.irq(handler=released_handler, trigger=Pin.IRQ_RISING, bouncetime=10)
18 | print(btn)
19 | # btn.irq(handler=both_handler, trigger=Pin.IRQ_RISING_FALLING, bouncetime=10)
20 | # print(btn)
21 |
22 |
23 |
24 | while True:
25 | time.sleep(1)
26 |
--------------------------------------------------------------------------------
/tests/init_angles_test.py:
--------------------------------------------------------------------------------
1 | from robot_hat import Robot,PWM,Servo,Music
2 | from robot_hat.utils import reset_mcu
3 | from time import sleep
4 |
5 | reset_mcu()
6 | sleep(0.01)
7 |
8 |
9 | def fuc():
10 | rubo = Robot([10,11,12],3,init_angles=[10,45,-45])
11 |
12 |
13 | if __name__ == "__main__":
14 | fuc()
15 |
--------------------------------------------------------------------------------
/tests/motor_robothat5_test.py:
--------------------------------------------------------------------------------
1 | from robot_hat import Motor, PWM, Pin
2 | from time import sleep
3 |
4 | m0 = Motor(PWM('P12'), PWM('P13'), mode=2)
5 | m1 = Motor(PWM('P14'), PWM('P15'), mode=2)
6 | m2 = Motor(PWM('P16'), PWM('P17'), mode=2)
7 | m3 = Motor(PWM('P18'), PWM('P19'), mode=2)
8 |
9 |
10 | try:
11 | while True:
12 | m0.speed(-50)
13 | m1.speed(-50)
14 | m2.speed(-50)
15 | m3.speed(-50)
16 | sleep(1)
17 | m0.speed(50)
18 | m1.speed(50)
19 | m2.speed(50)
20 | m3.speed(50)
21 | sleep(1)
22 | m0.speed(0)
23 | m1.speed(0)
24 | m2.speed(0)
25 | m3.speed(0)
26 | finally:
27 | m0.speed(0)
28 | m1.speed(0)
29 | m2.speed(0)
30 | m3.speed(0)
31 | sleep(.1)
32 |
33 |
--------------------------------------------------------------------------------
/tests/motor_test.py:
--------------------------------------------------------------------------------
1 | from robot_hat import Motor, PWM, Pin
2 | from time import sleep
3 |
4 | m0 = Motor(PWM('P13'), Pin('D4'))
5 | m1= Motor(PWM('P12'), Pin('D5'))
6 |
7 | try:
8 | while True:
9 | m0.speed(-50)
10 | m1.speed(-50)
11 | sleep(1)
12 | m0.speed(50)
13 | m1.speed(50)
14 | sleep(1)
15 | m0.speed(0)
16 | m1.speed(0)
17 | finally:
18 | m0.speed(0)
19 | m1.speed(0)
20 | sleep(.1)
21 |
22 |
--------------------------------------------------------------------------------
/tests/servo_hat_test.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python3
2 | from robot_hat import Servo, ADC
3 | from robot_hat.utils import reset_mcu
4 | from time import sleep
5 |
6 | reset_mcu()
7 | sleep(1)
8 |
9 | adc0 = ADC(0)
10 | adc1 = ADC(1)
11 | adc2 = ADC(2)
12 | adc3 = ADC(3)
13 | adc4 = ADC(4)
14 |
15 |
16 | if __name__ == '__main__':
17 | for i in range(16):
18 | print(f"Servo {i} set to zero")
19 | Servo(i).angle(10)
20 | sleep(0.1)
21 | Servo(i).angle(0)
22 | sleep(0.1)
23 | while True:
24 | v0 = adc0.read()
25 | v1 = adc1.read()
26 | v2 = adc2.read()
27 | v3 = adc3.read()
28 | v4 = adc4.read()
29 | print(v0, v1, v2, v3, v4)
30 | sleep(1)
31 |
--------------------------------------------------------------------------------
/tests/servo_test.py:
--------------------------------------------------------------------------------
1 | from robot_hat import Servo
2 | from time import sleep
3 |
4 | servos = [Servo(i) for i in range(12)]
5 |
6 | while True:
7 | for servo in servos:
8 | servo.angle(-20)
9 | sleep(0.1)
10 | for servo in servos:
11 | servo.angle(20)
12 | sleep(0.1)
13 |
14 |
--------------------------------------------------------------------------------