Örümcek robot kiti inceleme yazısını arayanlar için iyi haber: Bu yazıda REX markasının Discovery Serisi örümcek robot kitini kutusundan çıkardık, montajladık, çalıştırdık ve sizin için her aşamasını değerlendirdik. Elektronikli yapısı, 4 bacaklı hareket sistemi ve STEM odaklı kazanımlarla dolu örümcek robot kiti incelemesi, hem hobicilerin hem öğrencilerin hem de öğretmenlerin ilgisini çekebilecek kapasitede.

REX Discovery Serisi Örümcek Robot Kiti Tam Olarak Ne Sunuyor?
REX Örümcek Robot; öğrenciler, maker’lar ve STEM alanıyla ilgilenen herkes için tasarlanmış bir hazır robotik kitidir. Set, çocukların ve gençlerin temel elektronik, mekanik ve yazılım bilgilerini deneyimleyerek öğrenmesini sağlar.
- 4 bacaklı (quadruped) yürüme mekanizması
- Bluetooth destekli kontrol
- Arduino uyumluluğu sayesinde kodlanabilir altyapı
- Yaş grubu: 10+ ve üzeri
Bu robot “kendin yap” yerine “kendin keşfet” diyenler için biçilmiş kaftan!
Kutunun İçinde Neler Var?
2025 itibarıyla STEM projelerinde en çok tercih edilen kitlerden biri haline gelen bu örümcek robot, kutu içeriğiyle de oldukça iddialı. Videoda 1.06-3.30 dakikaları arasında detaylı olarak incelediğimiz kutu içeriği aşağıdaki gibidir:

| Ürün Adı | Ürün İçindeki Adet |
| Arduino UNO R3 Klon USB Kablo Hediyeli – (USB Chip CH340) | 1 |
| Arduino IO Genişletme Shield – Sensör Shield V5.0 | 1 |
| SG90 RC Mini (9gr) Servo Motor | 8 |
| IR Alıcı Verici Kumanda Seti – IR Receiver Module Wireless Remote Control K | 1 |
| GP Ultra Alkalin Pil AA Kalem 4′lü Paket | 1 |
| 4′lü AA Pil Yuvası – Pil Yatağı | 1 |
| M3 Somun | 36 |
| M3 10mm YSB Yıldız Silindirik Baş Metrik Vida | 40 |
| M3 12mm YSB Yıldız Silindirik Baş Metrik Vida | 22 |
| 10mm M3 Metal Dişi-Erkek Aralayıcı (Standoff-Spacer-Yükseltici) | 4 |
| M3 6mm YSB Yıldız Silindirik Baş Metrik Vida | 4 |
| 3mm Yükseltme Parçası | 3 |
| M2 15mm Cıvata | 3 |
| M2 Somun | 3 |
| Oynar Göz 10mm | 2 |
| M3 Fiberli Somun | 32 |
| Pleksi Parçaları | 1 |
Not: Kutudan fiziksel bir kitapçık çıkmamaktadır. Ancak ürünle birebir uyumlu olan uygulama kitapçığını buraya tıklayarak PDF formatında inceleyebilirsiniz. Kitapçık içerisindeki tüm uygulamalar, set içeriğiyle eksiksiz şekilde yapılabilmektedir.
Kurulumu Zor mu? Ne Kadar Sürüyor?
Kurulum aşamasını 3.30 – 7.02 dakikaları arasında videoda detaylı olarak görebilirsiniz. İlk defa robot montajı yapacak bir kişi için bu süre ortalama 45-60 dakikayı bulabilir. Daha önceden Arduino veya maker proje deneyimi olan biri ise yaklaşık 30 dakikada montajı tamamlayabilir.

Kurulum süreci:
- Servo motorların bacaklara montajı
- Ana gövdenin birleştirilmesi
- Arduino Uno’nun kasaya yerleştirilmesi
- Kabloların bağlanması
- Bluetooth modül ve pil bağlantısı
- Ayak testleri ve denge ayarları
Tavsiyemiz: Küçük vidaları kaybetmemek için montaj sırasında bir parça kutusu kullanın.
Kurulumdan Sonra Kodları Yüklemeyi Unutmayın!
Robotun donanımsal kurulumu tamamlansa da servo motorların hareket etmesi için Arduino kartına yazılım yüklenmesi şarttır.
Bu proje için 3 önemli yazılım dosyası bulunuyor:
1. Ana Kontrol Kodları: Robotun hareket, yön, pozisyon ve mod komutlarını kontrol eder. IR kumanda ile haberleşir.
#include <Servo.h>
#include <IRremote.h>
#define irUp 1033561079
#define irDown 465573243
#define irRight 71952287
#define irLeft 2351064443
#define irOK 1217346747
#define ir1 3810010651
#define ir2 5316027
#define ir3 4001918335
#define ir4 1386468383
#define ir5 3622325019
#define ir6 553536955
#define ir7 4034314555
#define ir8 2747854299
#define ir9 3855596927
#define ir0 2538093563
#define irStar 3238126971
#define irPound 4039382595
#define recieverPin 12
IRrecv irrecv(recieverPin);
decode_results results;
// Define servo objects
Servo legServos[8];
// RFL = Right Front Lift , LBP = Left Back Pivot
// RFP RFL RBP RBL LFP LFL LBP LBL
int lowPositions[] = {30 , 22 , 50 , 50 , 30 , 60 , 50 , 32 };
int neutralPositions[] = {80 , 72 , 100 , 100 , 80 , 110 , 100 , 82 };
int highPositions[] = {130, 130 , 150 , 150 , 130 , 160 , 150 , 132 };
int counterIR5 = 0;
int levelIR5 = 0;
bool alternateMovement = false ;
void setup() {
Serial.begin(9600);
// Attach servos to Arduino Pins
for (int i = 0; i < 8; ++i) {
legServos[i].attach(i + 2); // Assuming the servos are connected to pins 2 to 9
}
// Initialize IR Receiver
irrecv.enableIRIn();
}
void loop() {
while (!(irrecv.decode(&results))) {
//Wait for IR Signal
}
handleIRCommand(results.value);
irrecv.resume();
}
void handleIRCommand(unsigned long value) {
switch (value) {
case ir1:
leanSpecific(5);
break;
case ir2:
leanForward(300);
break;
case ir3:
leanSpecific(1);
break;
case ir4:
leanLeft(300);
break;
case ir5:
levelIR5 = counterIR5 % 4;
counterIR5++;
switch (levelIR5){
case 0:
Elevate();
break;
case 1:
Centralize();
break;
case 2:
DeElevate();
break;
case 3:
Centralize();
break;
default:
break;
}
break;
case ir6:
leanRight(300);
break;
case ir7:
leanSpecific(7);
break;
case ir8:
leanBackward(300);
break;
case ir9:
leanSpecific(3);
break;
case ir0:
alternateMovement= !alternateMovement;
break;
case irUp:
alternateMovement ? walkForward_Alternate(700) : walkForward(700);
break;
case irDown:
alternateMovement ? walkBackward_Alternate(700) : walkBackward(700);
break;
case irRight:
turnRight();
break;
case irLeft:
turnLeft();
break;
case irOK:
center_servos();
break;
//We can add more functions fore Star and Pound Later
default:
break;
}
}
//Sets argument Servo's position to its High State.
void setHigh(int servoNo) {
if (servoNo <= 7 && servoNo >= 0) // Check if the servoNo is valid
{
legServos[servoNo].write(highPositions[servoNo]);
delay(5);
}
}
//Sets argument Servo's position to its Notr State.
void setNotr(int servoNo) {
if (servoNo <= 7 && servoNo >= 0) // Check if the servoNo is valid
{
legServos[servoNo].write(neutralPositions[servoNo]);
delay(5);
}
}
//Sets argument Servo's position to its Low State.
void setLow(int servoNo) // Check if the servoNo is valid
{
if (servoNo <= 7 && servoNo >= 0) {
legServos[servoNo].write(lowPositions[servoNo]);
delay(5);
}
}
// Set's all Servo's to their Neutral States.
void center_servos() {
for (int i = 0; i < 8; ++i) {
setNotr(i);
delay(100);
}
}
// Turns the specified leg to the left.
// The argument should be the lift servo number of the relevant leg.
void legLeft(int servoNo,int _delay=100) {
if (servoNo <= 7 && servoNo >= 0) {
setLow(servoNo); // Lift Leg
delay(_delay);
setHigh(servoNo - 1); // Move Leg to the Left
delay(_delay+300);
setNotr(servoNo); //Lower Leg to Neutral Position
delay(_delay);
}
}
// Turns the specified leg to the Center.
// The argument should be the lift servo number of the relevant leg.
void legCenter(int servoNo,int _delay=100){
if (servoNo <= 7 && servoNo >= 0) {
setLow(servoNo); // Lift Leg
delay(_delay);
setNotr(servoNo - 1); // Move Leg to the Center
delay(_delay+300);
setNotr(servoNo); //Lower Leg to Neutral Position
delay(_delay);
}
}
// Turns the specified leg to the Right.
// The argument should be the lift servo number of the relevant leg.
void legRight(int servoNo,int _delay=100) {
if (servoNo <= 7 && servoNo >= 0) {
setLow(servoNo); // Lift Leg
delay(_delay);
setLow(servoNo - 1); // Move Leg to the Right
delay(_delay+300);
setNotr(servoNo); //Lower Leg to Neutral Position
delay(_delay);
}
}
void walkForward_Alternate(int _delay) {
//Right Front and Left Back Legs
legLeft(1,50);
legRight(7,50);
delay(300);
setNotr(0);
setNotr(6);
delay(_delay);
//Right Front and Left Back Legs
legRight(5,50);
legLeft(3,50);
delay(300);
setNotr(4);
setNotr(2);
delay(_delay);
}
void walkForward(int _delay) {
legLeft(1,50);
legRight(5,50);
legLeft(3,50);
legRight(7,50);
delay(_delay);
pullForward();
}
//For the use of walkForward function.
void pullForward(){
for (int servoNo = 0; servoNo < 8; servoNo += 2) {
if (servoNo > 2) // Detect 0 and 2 numbered servos.
{
setHigh(servoNo);
} else {
setLow(servoNo);
}
}
}
void walkBackward_Alternate(int _delay) {
//Right Back and Left Front Legs
legRight(3,50);
legLeft(5,50);
delay(300);
setNotr(2);
setNotr(4);
delay(_delay);
//Right Front and Left Back Legs
legLeft(7,50);
legRight(1,50);
delay(300);
setNotr(6);
setNotr(0);
delay(_delay);
}
void walkBackward(int _delay) {
legRight(3);
legLeft(7);
legRight(1);
legLeft(5);
delay(_delay);
pullBackward();
}
//For the use of walkBackward function.
void pullBackward() {
for (int servoNo = 0; servoNo < 8; servoNo += 2) {
if (servoNo <= 2)// Detect 0 and 2 numbered Servos.
{
setHigh(servoNo);
}
else {
setLow(servoNo);
}
}
delay(300); // Adjust the delay as needed
}
void leanSpecific(int servoNo){
switch (servoNo){
case 1:
setLow(1);
setHigh(3);
setHigh(5);
setHigh(7);
break;
case 3:
setLow(3);
setHigh(1);
setHigh(5);
setHigh(7);
break;
case 5:
setLow(5);
setHigh(1);
setHigh(3);
setHigh(7);
break;
case 7:
setLow(7);
setHigh(1);
setHigh(3);
setHigh(5);
break;
default:
break;
}
}
void leanForward(int _delay){
setLow(1);
setLow(5);
delay(_delay);
setHigh(3);
setHigh(7);
}
void leanBackward(int _delay){
setLow(3);
setLow(7);
delay(_delay);
setHigh(1);
setHigh(5);
}
void leanLeft(int _delay){
setLow(5);
setLow(7);
delay(_delay);
setHigh(1);
setHigh(3);
}
void leanRight(int _delay){
setLow(1);
setLow(3);
delay(_delay);
setHigh(5);
setHigh(7);
}
void Elevate(){
for(int i =1 ; i<8 ; i+=2 ){
setHigh(i);
delay(5);
}
}
void Centralize(){
for(int i =1 ; i<8 ; i+=2 ){
setNotr(i);
delay(5);
}
}
void DeElevate(){
for(int i =1 ; i<8 ; i+=2 ){
setLow(i);
delay(5);
}
}
void turnLeft(){
for (int servoNo = 1; servoNo < 8; servoNo+=2 ){
legLeft(servoNo);
delay(100);
}
delay(500);
for (int servoNo = 0; servoNo < 8; ++servoNo ){
setNotr(servoNo);
}
}
void turnRight(){
for (int servoNo = 1; servoNo < 8; servoNo+=2 ){
legRight(servoNo);
delay(100);
}
delay(500);
for (int servoNo = 0; servoNo < 8; ++servoNo ){
setNotr(servoNo);
}
}
2. IR Kumanda Test Kodu: Hangi tuşun hangi sinyali yolladığını öğrenmek için kullanılır
#include <IRremote.h>
const int RECV_PIN = 12; // Define the IR receiver pin
IRrecv irrecv(RECV_PIN); // Create an IR receiver object
decode_results results; // Create an object to hold the decoding results
void setup(){
Serial.begin(9600); // Initialize serial communication
irrecv.enableIRIn(); // Enable the IR receiver
irrecv.blink13(true); // Enable blinking on pin 13 when IR signal is received
}
void loop(){
unsigned long value;
if (irrecv.decode(&results)){ // Check if an IR signal is received
value = results.value; // Get the value of the received IR signal
Serial.println("Pressed Button Code");
Serial.println(value); // Print the received IR code
Serial.println("**************************************");
irrecv.resume(); // Receive the next IR signal
delay(200); // Delay to avoid processing the same signal multiple times
}
}
3. Servo Kalibrasyon Kodu: Her servo motorun doğru açılarla hizalanmasını sağlar.
#include <Servo.h>
Servo legServos[8]; // Array to hold servo objects
void setup() {
Serial.begin(9600);
// Attach each servo to a pin (assuming servos are connected to pins 2 to 9)
for (int i = 2; i < 10; ++i) {
legServos[i - 2].attach(i);
}
}
void loop() {
if (Serial.available() > 0) {
// Read the selected servo number from serial input
int selectedServo = Serial.parseInt();
if (selectedServo >= 2 && selectedServo <= 9) {
Serial.print("Enter position for Servo ");
Serial.print(selectedServo);
Serial.print(" (0-180): ");
// Clear any remaining characters in the serial input buffer
while (Serial.available() > 0) {
Serial.read();
}
// Wait for user input for the servo position
while (Serial.available() == 0) {
// Wait for input
}
// Read the servo position from serial input
int servoPosition = Serial.parseInt();
if (servoPosition >= 0 && servoPosition <= 180) {
// Set the servo position
legServos[selectedServo - 2].write(servoPosition);
Serial.print("Servo ");
Serial.print(selectedServo);
Serial.print(" position set to: ");
Serial.println(servoPosition);
} else {
Serial.println("Invalid servo position. Should be between 0 and 180.");
}
} else {
Serial.println("Invalid servo number. Should be between 2 and 9.");
}
// Clear the input buffer
while (Serial.available() > 0) {
Serial.read();
}
}
}
Kodlar Arduino IDE üzerinden karta yüklenebilir. Tüm kodları ve detayları yazımızda veya uygulama kitapçığında bulabilirsiniz!
Hareket Kabiliyeti Nasıl? Yürüyor mu Gerçekten?

Robotu montaj olduktan sonra videonun 7.02 – 8.59 arasında test süreci izleyebilirsiniz. 4 bacaklı yapısı sayesinde ileri, geri, sola ve sağa yürüme hareketlerini yapabiliyor. Hareket kontrolü bluetooth bağlantısı ile mobil cihazdan sağlanıyor.
▶ Hızlı hareket yerine dengeli adımlar tercih edilmiş. Bu sayede hem daha estetik hem de mekanik olarak daha dayanıklı.
▶ Servo motorlar standart plastik dişlidir, ancak aşırı yüke zorlamamak ömrü uzatacaktır.
REX Discovery Serisi Örümcek Robot Kiti Ne Öğretir? STEM Kazanımları Nelerdir?

• Mekanik montaj becerisi
• Elektronik komponent tanıma (servo motor, modül, kart)
• Kodlama: Arduino C dili mantığına giriş
• Problem çözme ve mantıksal bağlantı kurma
• Ebeveyn-çocuk birlikte proje yürütme deneyimi
İpucu: Öğretmenler bu kiti okul içi STEM günleri, kulüp dersleri veya teknoloji-tasarım projelerinde kullanabilir.
REX Discovery Serisi Örümcek Robot Kitini Kimler Almalı?
Yeni başlayan bir maker mısın? Bu kit senin için uygun.
Çocuğuna STEM sevgisini aşılamak isteyen bir ebeveyn misin? Doğru yerdesin.
Arduino ve robotik öğretmek isteyen bir öğretmen misin? Sınıfta kullanılabilecek seviyede.
Proje tabanlı öğrenme isteyen bir lise/üniversite öğrencisi misin? Bu kit seni ileri taşır.
YouTube Videomuzu Kaçırma!
Rex örümcek robotu detaylı olarak incelediğimiz videomuzda:
- Kutu içeriğine birlikte bakıyor,
- Montajı adım adım yapıyor,
- Kodları yükleyip çalıştırıyoruz,
- Robotu harekete geçiriyor ve deneyimimizi aktarıyoruz.
Hazır ama öğretici bir deneyim
REX Discovery Serisi Örümcek Robot Kiti, kodlamaya ve robotiğe merak duyan herkes için adeta yürüyen bir laboratuvar. Kendin yap projeleri kadar zaman almasa da aynı derecede eğitici ve tatmin edici. Kutu içeriği kaliteli, kurulum adımları açık ve sade, hareket kabiliyeti ise gayet yeterli.
Maker kültürüyle tanışmak isteyen herkes için önerilir.
Sen ne düşünüyorsun?
Robotu beğendin mi? Kodu yüklerken sorun yaşadın mı? Fikirleriniz bizim için çok değerli! Lütfen deneyimlerini, sorularını ya da projeyle ilgili ipuçlarını yorumlar bölümünde bizimle paylaş!







