Покажи участието

От тук може да видиш всички публикации на този потребител.


Теми - kanadeca

Страници: [1]
1
BEAM-роботи / Представям ви MFR 2007
« -: Август 23, 2007, 04:45:10 pm »
Кратко описание на проекта:

Робот - B.E.A.M. (Biology, Electronics, Aesthetics and Mechanics)

Име -  My First Robot 2007 (годината) => на български би звучал МПР (Моят Първи Робот)

Създаден по схемата "Най-простият робот 2 част".
Батерия - 4.5 V (Засега е такава, но е 2 пъти по-голяма и по-тежка от останалите части и доста озорва моторчетата, така че ще я сменя с батерийки тип "хапчета")

Елементи: драйвер за двигатели L293B (разликата между L293B и D е в ампеража. На B е 1мА, докато при D е 0,6мА); 2 броя чешки фототранзистори от серията KP (благодаря на Borislav за тях) и 2 резистора по 220 Ома всеки (също благодарение на Borislav).

Механика: 2 ел. моторчета предназначени за дискмен, които въртят хибрид между колело и крак. Този хибрид всъщтност представляват клечки за зъби разположени на 60 градуса (не по Целзий  :) ) една от друга. Шасито на робота представлява огромната батерия, а върху нея е разположена схемата.

Какво прави: Роботът върви към светлината. Ако светлина няма, той спира на едно място. Ако светлина попадне само върху единия фототранзистор се върти само едното моторче. Така роботът се завърта докато и върху другия фототранзистор не попадне светлина. Това придава илюзия сякаш роботът сам "търси" светлината.

Какво предстои: Мисля да купя лампи със слънчеви батерии и да го направя да се задвижва със слънчева енергия. Предстои също смяна на батерията и направа на ново шаси. Ще направя шасито от LEGO като по този начин то ще стане по функционално и красиво и най-вероятно ще започне да се задвижва от колелца. А по-нататък и още...

Снимков материал:



Това е платката със запоените върху нея елементи.



Пак платката, но гледана под друг ъгъл.



Тук е закачена към шасито, т.е. закачена е върху батерията. Отдолу са моторчетата с колелата, но не се виждат.



Ето го едното от моторчетата с "крак-колелото". Изглежда малко криво, но всъщност е така защото самото моторче е под наклон, иначе всичко е точно.

В момента роботът изглежда доста зле, но важното е, че се движи нормално. Ако успея да го направя със слънчеви батерии тогава ще мисля за ново шаси и за външен вид. По всяка вероятност това ще стане към средата на септември.

Съжалявам за лошите снимки, но фотоапаратът замина на ремонт и се наложи да ги направя с телефона.

ВНИМАНИЕ!!! Евентуални грешки при направата на робота по тази схема:
1.Ако подадем положителен сигнал от батерията на INPUT2 и INPUT3 от драйвера ни за двигатели L239D, роботът ще започне да избягва светлината.
2.Ако свържем някой от изводите за моторчетата (output 1,2,3,4) с GND (минуса на батерията), то нашето моторче ще се върти постоянно без спиране.

Ако откриете още нещо кажете...

Представих ви MFR 2007, вторият български BEAM робот.

Ако има обновления по работата ми ще променям първият си пост...

2
Форум на Web-мастъра / Честито ни 1000 мнение!!!
« -: Август 21, 2007, 10:07:56 pm »
Ето го и него... вече е факт. То е от Borislav във темата "Моят сумобот". Ето го и него:

Цитат
На базата на фотосензор (optocapler, оптрон) от тип RPR-220 (datasheet), който ми изпрати Ясен от София.  Много са хубави, наистина... Повърхността трябва да е на 6 мм от сензора. Имам всичко (без онези резистори, но още не съм ровил в елементите си), и утре започвам да сглобявам..  Това е засега!


За тези 2 месеца и тези 1000 мнения моите (предполагам и вашите) знания значително нарастнаха. Също така има все повече и повече ентусиасти готови да се задълбочат в тази наука - Роботиката. Пожелавам порталът да продължава в същия дух работата си, та даже и по-добре.  :clap:

П.С. Благодаря на всички съфорумци, без които нямаше да успея да направя моя 1ви робот. В момента го доизпипвам и скоро ще добавя тема, за да чуя вашите отзиви,мнения, критики...

3
Общ форум / Какви са тези части?
« -: Август 21, 2007, 09:43:15 am »
Намерих 2 части вкъщи и не ги знам за какво служат. Едната има нещо като прозорче и вътре се вижда една плочка, към която са свързани нещо като жички. Отгоре пише :
8404A
ET 2716Q-1
А отдолу: E01F0077B Има 12 крачета

По другата няма нищо освен 20 крачета и надпис:

8224
1  2
EF6800P
От долната страна пише H90 и EF 800, EF600

Съжалявам, че не мога да дам снимки, надявам се да ми помогнете.

4
Форум на Web-мастъра / Предложение за портала
« -: Август 03, 2007, 11:20:36 am »
Предлагам към системата за качване да има и търсачка на файловете, за да бъде по-лесно намирането им като станат повече. Ето едно кодче и ако искаш може да го поставиш:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Search script</title>
</head>
<body>
<table>
<tr><td>
<form action="./search.php" method="get">
<b>Търсене:</b> <input type="text" name="s" class="field" size="65" value="<?php 
$s 
htmlspecialchars&#40;$_GET['s'&#93;, ENT_QUOTES&#41;; ///// http&#58;//bg2.php.net/manual/en/function.htmlspecialchars.php 
echo $s?>
">
<input type="submit" value="Търси" class="button">
</form>
<?php 
if &#40;$s !=null &#41;&#123; 
echo "</td></tr>"
&
#125; 
?>

<?php 
$sort 
htmlspecialchars&#40;$_GET['sort'&#93;, ENT_QUOTES&#41;; ///// http&#58;//bg2.php.net/manual/en/function.htmlspecialchars.php 
function size&#40;$path&#41;&#123; /////функция, за превръщане на байтове в по-големи единици 
$size filesize&#40;$path&#41;; 
if&#40;$size >= 1073741824&#41; 
&#123; 
$size round&#40;$size / 1073741824 * 100&#41; / 100; 
$size=substr&#40;$size,0 , 4&#41;; 
$size $size " GB"
&
#125; 
elseif&#40;$size >= 1048576&#41; 
&#123; 
$size round&#40;$size / 1048576 * 100&#41; / 100; 
$size=substr&#40;$size,0 , 4&#41;; 
$size $size " MB"
&
#125; 
elseif&#40;$size >= 1024&#41; 
&#123; 
$size round&#40;$size / 1024 * 100&#41; / 100; 
$size=substr&#40;$size,0 , 4&#41;; 
$size $size " KB"
&
#125; 
else 
&
#123; 
$size=substr&#40;$size,0 , 4&#41;; 
$size $size " B"
&
#125; 
echo $size
&
#125; 
function show&#40;$dir&#41;&#123; /////с тази функция обхождаме директорията и директориите в нея 
global $i///// правим $i глобална, за да важи нейната стойност и извън фукцията 
global $file///// правим $file глобална, за да важи нейната стойност и извън фукцията 
$s htmlspecialchars&#40;$_GET['s'&#93;, ENT_QUOTES&#41;; ///// http&#58;//bg2.php.net/manual/en/function.htmlspecialchars.php 
$directory opendir&#40;$dir&#41;; ///// отваряме зададената папка 
while &#40;$files = readdir&#40;$directory&#41;&#41; ///// изкарваме файловете от директорията 
&#123; 
if &#40;&#40;$files != ".."&#41; AND &#40;$files != "."&#41;&#41;&#123; ///// ако файла е .. или . &#40;т.е. предишната директория&#41; го пропускаме 
$path $dir.'/'.$files///// определяме пълния път до файла 
if &#40;!is_dir&#40;$path&#41;&#41;&#123; ///// ако файла не е директоктория продължаваме нататък 
if &#40;eregi&#40;$s, $files&#41;&#41; &#123; ///// ако във файла се съдържа ключовата дума която търсим продължаваме нататък 
$i++; ///// покачваме стойността на $i с 1 
$file[&#93;=array &#40; ////// http&#58;//bg2.php.net/manual/en/function.array.php 
"name" => $files///// придаваме стойност на name => $files -> името на файла 
"dir" => $dir///// придаваме стойност на dir => $dir -> директорията на файла 
"path" => $path ///// придаваме стойност на path => $path -> линка към файла 
&#41;; 
&#125; 
&#125; 
if&#40;is_dir&#40;$path&#41;&#41; &#123; ////// ако файла е директория продължаваме нанатък и отново следва функцията която преглежда папката 
show&#40;$path&#41;; ///// функцията за преглеждане на папката. Докато има папки, те ще се отварят и преглеждат за файлове съдържащи търсените от нас ключови думи 
&#125; 
&#125; 
&#125; 
&#125; 

if &#40;$s != null&#41;&#123; ///// ако заявката за търсене не е празна 
show &#40;"."&#41;; ///// задаваме от коя папка да започне търсенето на файлове 
$num count&#40;$file&#41;; ///// брой $file 
if &#40;$num != null&#41;&#123; ////// ако $num няма стойност, показва че няма намерени файлове 
$found="Намерени файлове&#58; ".$i
&
#125; else &#123; ///// ако $num има стойност, показва колко са намерените файлове 
$found="Няма намерени файлове"
&
#125; 
echo 
<tr> 
<td> 
<table width=\"100%\" align=\"left\" style=\"font-size&#58;12px;font-family&#58; Tahoma;\"> 
<tr> 
<td style=\"border&#58;1px solid #DBDBDB;\" colspan=\"3\"> 
<div style=\"padding&#58;1px; background-color&#58; #F2F2F2; white-space&#58;nowrap\">Резултати за&#58; "
.$s."</div> 
</td> 
</tr> 
<tr> 
<td style=\"border&#58;1px solid #DBDBDB;\" colspan=\"3\"> 
<div style=\"padding&#58;1px; background-color&#58; #F2F2F2; white-space&#58;nowrap\">"
.$found."</div> 
</td> 
</tr> 
</table> 
</td> 
</tr> 
<tr> 
<td> 
<table width=\"580px\" align=\"left\" style=\"font-size&#58;12px;font-family&#58; Tahoma;\"> 
<tr> 
<td style=\"border&#58;1px solid #DBDBDB;\" width=\"20px\" align=\"center\"> 
<div style=\"padding&#58;1px; background-color&#58; #F2F2F2; white-space&#58;nowrap;height&#58;15px;\"> 
</div> 
</td> 
<td style=\"border&#58;1px solid #DBDBDB;\" width=\"510px\" align=\"left\" colspan=\"2\"> 
<div style=\"padding&#58;1px; background-color&#58; #F2F2F2; white-space&#58;nowrap;height&#58;15px;\"> 
<a href=\"?s="
.$s.""
if &
#40;$page != null&#41;&#123; ///// ако $page има стойност, т.е. избрана е страница 
echo "&page=".$page.""
&
#125; 
echo "&sort=name\">Сортирай по име</a>"
if &
#40;$sort == "name"&#41;&#123; ///// ако вече е избрано да се сортират файловете по име се показва опция за премахване на сортирането 
echo " <a href=\"?s=".$s
if &
#40;$page != null&#41;&#123; ///// ако $page има стойност, т.е. избрана е страница 
echo "&page=".$page
&
#125; 
echo "\"><b>[X&#93;</b></a>"
&
#125; 
echo "</div> 
</td></tr>"

if &
#40;$num > "30"&#41;&#123; ///// ако намерените файлове са повече от 30 
$page_num=ceil&#40;$num/30&#41;; ///// определяне броя на страниците. ceil&#40;&#41; - закръгля към по-голямото число 
if &#40;$page != null&#41;&#123; ///// ако $page има стойност, т.е. избрана е страница 
$num_for=30*$page////// определя се до кой файл да се изреждат останалите 
$i_value=$num_for-30///// определя се от кой файл да започнат се изреждат останалите. т.е. от $i_value до $num_for 
$rows $num_for $num///// редовете за изреждане &#40;<tr>&#41;. Попринцип те са 30, но на последната страница се получават празни редове. За това е нужна тази променлива 
if &#40;$page == $page_num&#41;&#123; ///// ако избраната страница е равна на броя на страници, т.е. ако е последна 
$num_for=$num_for-$rows///// броя на редовете, които ще се изреждат на последната страница, за да не останат празни редове 
&#125; 
&#125; else &#123; ///// ако не е избрана страница се показват първите 30 файла 
$i_value="0"
$num_for="30"
&
#125; 
&#125; else &#123; ///// ако файловете са по-малко от 30 се показват всичките 
$i_value="0"
$num_for=$num
&
#125; 
for &#40;$i=$i_value;$i<$num_for;$i++&#41;&#123; ///// for loop 
if &#40;strlen&#40;$file[name&#93;&#41;>"75"&#41;&#123; ///// ако дължината на името е по-дълга от 75 символа 
$totchki='...'
&
#125; else &#123; ///// ако е по-малка от 75 символа 
$totchki=''
&
#125; 
$file[$i&#93;[name&#93;=substr&#40;$file[$i&#93;[name&#93;,0 , "75"&#41;; ///// махат се всички символи след 75тия 
if &#40;$sort == "name"&#41;&#123; ///// ако е избрано да се сортират файловете по име 
sort&#40;$file&#41;; ///// http&#58;//bg2.php.net/manual/en/function.sort.php 
&#125; 
//////////////// ИЗРЕЖДАНЕ НА ФАЙЛОВЕТЕ В ОТДЕЛНИ РЕДОВЕ - START //////////////// 
echo "<tr> 
<td style=\"border&#58;1px solid #DBDBDB;\" width=\"20px\" align=\"center\"> 
<div style=\"padding&#58;1px; background-color&#58; #F2F2F2; white-space&#58;nowrap;height&#58;15px;\"> 
<a href=\""
.$file[$i&#93;[dir&#93;."\" onClick=\"this.target='_blank'\"> 
<img src=\"folder.png\" height=\"15px\" width=\"15px\"></a> 
</div> 
</td> 
<td style=\"border&#58;1px solid #DBDBDB;\" width=\"510px\" align=\"left\"> 
<div style=\"padding&#58;1px; background-color&#58; #F2F2F2; white-space&#58;nowrap;height&#58;15px;\" onmouseover=\"this.style.backgroundColor='#F9F9F9'\" onmouseout=\"this.style.backgroundColor='#F2F2F2'\"> 
<a href=\""
.$file[$i&#93;[path&#93;."\">".$file[$i&#93;[name&#93;.$totchki."</a> 
</div
</
td
<
td style=\"border&#58;1px solid #DBDBDB;\" width=\"50px\" align=\"center\"> 
<div style=\"padding&#58;1px; background-color&#58; #F2F2F2; white-space&#58;nowrap; color&#58; #0078cc;height&#58;15px;\">"

size&#40;$file[$i&#93;[path&#93;&#41;; 
echo "</div></td></tr>"."\n"
//////////////// ИЗРЕЖДАНЕ НА ФАЙЛОВЕТЕ В ОТДЕЛНИ РЕДОВЕ - END //////////////// 
&#125; 
if &#40;$num > "30"&#41;&#123; ///// ако броя на файловете е почю-голям от 30 
$page_num=ceil&#40;$num/30&#41;; ///// определя се броя на страниците 
//////////////// ИЗРЕЖДАНЕ НА ЛИНКОВЕ КЪМ РАЗЛИЧНИТЕ СТРАНИЦИ - START //////////////// 
echo "<tr><td colspan=\"3\" style=\"border&#58;1px solid #DBDBDB;white-space&#58;nowrap;font-size&#58;13px;font-family&#58; Tahoma;\">"

for&
#40;$a=1;$a<=$page_num;$a++&#41;&#123; ///// for loop 
if &#40;$a==$page&#41;&#123; ///// ако в момента разглеждате дадената страница, тя не излиза като линк 
echo " <b>".$a."</b> |"
&
#125; else &#123; ///// изреждат се линковете към различните страници 
echo " <a href=\"?s=".$s."&page=".$a
if &
#40;$sort == "name"&#41;&#123; 
echo "&sort=name"
&
#125; 
echo "\">".$a."</a> |"
&
#125; 
&#125; 
echo "</td></tr>"
&
#125; 
//////////////// ИЗРЕЖДАНЕ НА ЛИНКОВЕ КЪМ РАЗЛИЧНИТЕ СТРАНИЦИ - END //////////////// 
echo "</table>"
&
#125; 
?>

</td></tr></table>
</body>
</html>

5
Общ форум / Помощ относно L293D
« -: Юли 24, 2007, 09:53:59 am »
Здравейте! Днес за пръв път попаднах на този интересен сайт. Още от малък се увличам по роботите и съм си правил не един с дистанционно управление, но да направя такъв, който да "мисли" не ми е идвало и на ум по простата причина, че мислех, че са много сложни. Поразгледах внимателно форума и попаднах на тази статия. Имам два въпроса:
1.Ще мога ли да направя този робот без да чета допълнителни материали и ако не ще можете ли да ми дадете такива?
2.Ако пък това ми е по силите ще ми кажете ли откъде мога да закупя този драйвер L293D или от какъв уред мога да го взема?

Поздрави!

Страници: [1]